安装docker-ce
Requires: container-selinux >= 2.9
solve
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.74-1.el7.noarch.rpm
sudo yum install -y docker-ce
1、run 一个容器
[root@docker ~]# docker run --name "httpd-1" httpd
这样运行会让容器在前台运行,当命令执行完之后会自动退出
[root@docker ~]# docker run -d --name "httpd-1" httpd
98219ea6e0efb30f601d4f831f8a661757512c2d409f3368c481fd8347836024
[root@docker ~]#
2、映射端口
[root@docker ~]# docker run -d --name "httpd-3" -p 80:80 httpd
29009ae86429a561a0021f9f2c728361363e60227182e76d4b14d8fb96d13702
[root@docker ~]# ss -luntp|grep 80
tcp LISTEN 0 128 :::80 :::* users:(("docker-proxy-cu",pid=27101,fd=4))
[root@docker ~]# curl 127.0.0.1
<html><body>It works!</body></html>
[root@docker ~]#
3、stop/start/restart 一个容器
docker stop httpd-1
docker start httpd-1
docker restart httpd-1
当然还支持 数组的方式
[root@docker ~]# docker stop httpd-{1,3}
4、查看所有停止的容器
[root@docker Dockerfile]# docker ps -aq -f status=exited
0a39ef3f21c8
29009ae86429
22ec5403e417
5、删除所有停止的容器
[root@docker Dockerfile]# docker rm $(docker ps -aq -f status=exited)
0a39ef3f21c8
29009ae86429
22ec5403e417
[root@docker Dockerfile]# docker ps -aq -f status=exited
[root@docker Dockerfile]#
6、大家 可能会被墙到,所以要替换国内的image源
[root@docker01 ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://gca5gyqx.mirror.aliyuncs.com"]
}
[root@docker01 ~]#
7、 当制作的docker image 没有设置 主进程的时候,当容器运行完就停止了。所以要让其能一直运行需要 配合-it 和-d 一起使用
docker run -it -d --name test-ansible ansible-my-v1