【docker运维】docker基础快速上手小教程

docker基础操作部分包括docker安装,docker启动,docker操作,docker关闭,docker删除几个部分。主要是针对普通用户,需要深入了解的建议进行系统学习。

docker基础

来源于菜鸟教程【https://www.runoob.com/docker/docker-tutorial.html】

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。

docker安装

centos系统下,docker仅支持7以上版本。本文以centos8为例。

增加一个docker-ce的repo源,然后安装依赖,有可能会提示依赖要加上一些命令参数才能安装,只用按提示进行操作即可。

yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

然后安装docker

   yum install -y  https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.13-3.2.fc30.x86_64.rpm
   yum install docker-ce docker-ce-cli

不报错的话就完成了安装!

docker启动

systemctl start docker

这样docker的服务就启动起来了,可以开始使用docker命令

docker操作

docker的操作较多,较常用到的是下载镜像、加载镜像、以管理员身份进入镜像、从镜像中copy、copy进镜像、镜像内部更新等

docker下载安装镜像

安装docker的冬季,本来只是简单的想从网上下载一个部署好的collabora online服务,用于做nextcloud的在线office浏览用,在这里以此举例。

docker pull collabora/code

通过以上命令,镜像就下载到本地了。

运行/启动镜像,并生成一个容器

docker run -t -d -p 0.0.0.0:9980:9980 -e 'domain=192\\.168\\.1\\.110|192\\.168\\.33\\.145' -e "username=admin" -e "password=123456" --restart always --cap-add MKNOD collabora/code

以上代码来源于简书:https://www.jianshu.com/p/4082f998a05b

运行镜像,主要用docker run,具体用法参考教程:https://www.runoob.com/docker/docker-run-command.html

除此之外,常用的还有docker stop/stats/ps/restart …等等,不一一阐述。

进入容器

当我们启动(run)了一个容器以后,我们需要获取容器ID(container ID),才能对具体容器进行操作

docker ps -a

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YCUKOMJ7-1607782879159)(https://i.loli.net/2020/12/12/DRaxkCwoQh3iEFH.png)]

如上图最后一行,可以看到容器ID,然后我们进入这个容器

docker exec -it 1e560fca3906 /bin/bash

或者以管理员身份进入容器,这样可以对容器内的内容进行修改

docker exec -it --user root 1e560fca3906 /bin/bash

但是我这个容器,把vim命令删掉了,我什么也做不了,所以管理员登录后,需要对容器安装命令。要更新,首先需要知道docker的系统类型,这里的操作就是linux的操作了。

cat /etc/issue

然后发现这个docker是Ubuntu的,也需要从添加源开始,由于不能用vim,因此我们如下操作,直接把源加进去即可。

echo deb http://archive.ubuntu.com/ubuntu/ trusty main universe restricted multiverse >> /etc/apt/sources.list

更新一下管理工具包,再安装vim即可

apt-get update
apt-get install vim

这样就会发现,其实容器里是另一个linux天地,套娃而已。

docker copy

初始用这个命令,是因为没有vim命令,想着拷出来再放回去,结果发现这样操作,连用户都不一样,最后导致权限不够。不推荐,但是可能会有用,先简单说一下做记录。

本机-》docker

docker cp copy.txt 1e560fca3906:/usr/local/

docker-》本机

docker cp 1e560fca3906:/usr/local/copy.txt /home/

关闭container,删除container

docker stop 1e560fca3906
docker rm 1e560fca3906

也可以有批量的停止和删除所有容器方法

docker stop $(docker ps -a -q) //  stop停止所有容器 
docker rm $(docker ps -a -q) //   remove删除所有容器

猜你喜欢

转载自blog.csdn.net/u010472858/article/details/111086163
今日推荐