Linux需要六种名称空间支持,才能实现用户空间的隔离技术
安装docker:
下载docker库:wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker.repo
yum install docker-ce
【若报错container-selinux >= 2.9,则安装container-selinux即可解决】
使用阿里云安装镜像加速器:
1. 安装/升级Docker客户端
推荐安装1.10.0以上版本的Docker客户端,参考文档 docker-ce
2. 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://ypkytp04.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
docker.service启动以后会将iptables中的FORWARD规则默认置为DROP
如果该DROP规则会影响以后其他的进程使用,可以直接修改配置为文件/usr/lib/system/system/docker.service
增加ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT
#systemctl daemon-reload
#systemctl restart docker
#docker version可以显示客户端和服务端的相关信息
#docker info:查看详细信息
显示镜像相关信息:#docker image ls 加--digests显示完整格式
先本地拖镜像:#docker image pull alpine:[版本号] 如果不加版本号,默认为latest(最新版)
使用json数组显示镜像的源数据信息:#docker image inspect alpine:[版本号]
一个容器内一般只运行一个进程及其子进程
运行容器:docker container run
#docker container run --name a1 -it alpine
任何时候想让一个docker容器处于运行状态,必须确保容器内的进程运行在前台。
启动停止的容器:#docker container start [容器名称]
注:圆形表示状态,矩形表示操作
列出容器:#docker ps
#docker container run --name a2 -it --rm alpine --rm 表示一旦进程退出,则将容器删除
查看镜像:docker image ls
删除镜像:docker image rm [镜像名称] 或 docker rmi [镜像名称]
为镜像打标签(相当于创建硬链接):docker image tag [原镜像标签] [新标签]
一个容器只运行一个进程,到底运行哪个进程,取决于镜像默认给出的定义。
查看镜像定义:#docker image inspect httpd:2.4
若要修改,这在docker run 时,后面加上要使用的命令,例如:#docker run --name web2 httpd:2.4 /bin/sh