1:Docker 对CentOS的版本要求
CentOS 7 (64-bit)、CentOS 6.5 (64-bit)或者更高的版本
Docker 运行在CentOS 7 上,要求系统为64位、系统内核为3.10以上
Docker 运行在CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为2.6.32-431 或者更高版本。
cat /etc/redhat-release # 查看系统版本号 ; uname -r # 查看内核。
2:安装docker
yum -y install docker #安装docker (我用的是Centos Linux7)
sudo docker version #查看docker 版本
3:使用docker ,一个镜像在一台宿主机上可以运行出多个容器,docker run 时使用不同的外部映射端口即可
systemctl start docker #启动docker (service docker start)
systemctl stop docker #停止docker
sudo docker rm xx #指定容器名或者容器id来删除,删除前请先停止容器,保证在非运行状态
sudo docker rmi xxx 来删除指定的镜像,镜像存在依赖关系,先删除最下层,最后删除顶层,建议根据镜像名字来删除
#获取容器镜像pull sudo docker pull nginx
#查看当前镜像 sudo docker images
# 列出所有容器 sudo docker ps -a , 不加 -a 仅列出正在运行的,像退出了的或者仅仅只是创建了的就不列出来
#列出最新创建的容器 sudo docker ps -l
#运行指定的镜像 sudo docker run -d -p 8800:80 --name nginx_d nginx
#宿主主机端口:容器内部端口 -d 后台运行 -p 8800:80 是指定对外暴露的端口 容器内部用80 对应外部宿主主机的的8800 代理一样
--name指定容器的名字 最后的nginx 代码要运行的镜像名字 有tag的加上tag 如 nginx:xxx 默认为latest 然后访问宿主主机地址+8800端口
#停止指定的镜像 sudo docker stop xxxname
#容器被启动后停止。想要在启动不能使用docker run , 需要使用docker start docker_name
#提升权限 sdudo docker run -d --privileged=true -p 83:80 --name nginx83 nginx
#进入容器镜像进行修改 sudo docker exec -it 54d26bbce3d6 /bin/bash ;
54d26bbce3d6 为容器id 通过exec命令进入到容器内部进行操作, 其中红色部分可以是容器id或容器名字
#获取镜像信息详情 sudo docker inspect nginx_d ;
#对修改的容器镜像生成新镜像 sudo docker commit nginx_d nginx_2/nginx:v1.0 ;
nginx_d 表示我们刚修改的容器名字或者id ; nginx_2/nginx:v1.0 为保存的镜像名字 :后面为tag