拉取镜像
docker pull centos:8
创建容器
docker run -d centos:8 /usr/sbin/init
查看运行中的容器
docker ps
令容器打印命令/执行命令
docker exec 42c943bb519d echo 'hello world'
现在创建一个容器,名为 java_ssh_proto,用于配置一个包含 Java 和 SSH 的环境:
docker run -d --name=java_ssh_proto --privileged centos:8 /usr/sbin/init
进入容器
docker exec -it java_ssh_proto bash
退出容器
exit
停止容器
docker stop java_ssh_proto
保存镜像
docker commit java_ssh_proto java_ssh
本地向容器hadoop_single放置文件
docker cp <你存放hadoop压缩包的路径> hadoop_single:/root/
# hadoop_single为容器名称
后台运行容器
docker run -itd --name ubuntu-test ubuntu /bin/bash
# 意思为后台运行ubuntu-test这个容器
映射容器内的端口
docker run -d -p 5000:5000 training/webapp python app.py
# 意思为容器training/webapp运行python文件app.py并且把容器内的5000端口映射到外网的5000端口 内部的5000端口->本机的5000端口
容器配置自启动
# 开启容器自启动
docker update --restart=always 【容器名】
例如:docker update --restart=always tracker
# 关闭容器自启动
docker update --restart=no【容器名】
例如:docker update --restart=no tracker
##### 相关配置解析
no:
不要自动重启容器。(默认)
on-failure:
如果容器由于错误而退出,则重新启动容器,该错误表现为非零退出代码。
always:
如果容器停止,请务必重启容器。如果手动停止,则仅在Docker守护程序重新启动或手动重新启动容器本身时才重新启动。(参见重启政策详情中列出的第二个项目)
unless-stopped:
类似于always,除了当容器停止(手动或其他方式)时,即使在Docker守护程序重新启动后也不会重新启动容器。
启动已终止的容器
docker start 【容器名称】