一、docker服务相关
1、开机自动启动docker服务
systemctl enable docker
2、启动docker服务
systemctl start docker
3、重启docker服务
systemctl restart docker
4、关闭docker服务
systemctl stop docker
二、镜像相关
1、查询镜像
docker images
2、拉取镜像
docker pull [镜像ID/镜像名称]
三、容器相关
1、创建启动容器
docker run [镜像]
参数有:
-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-P: 随机端口映射,容器内部端口随机映射到主机的端口
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
--name="nginx-lb": 为容器指定一个名称;
--dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;
--dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;
-h "mars": 指定容器的hostname;
-e username="ritchie": 设置环境变量;
--env-file=[]: 从指定文件读入环境变量;
--cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;
-m :设置容器使用内存最大值;
--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;
--link=[]: 添加链接到另一个容器;
--expose=[]: 开放一个端口或一组端口;
--volume , -v: 本机路径与容器路径映射 比如:docker run -v /test:/test [镜像] 该映射为根
目录中的/test映射给容器中的根目录/test
2、启动/停止/重启/删除容器
docker start [容器ID] --启动容器
docker stop [容器ID] --停止容器
docker restart [容器ID] --重启容器
docker rm [容器ID] --删除容器
3、查询容器
docker ps
参数有:
-a :显示所有的容器,包括未运行的。
-f :根据条件过滤显示的内容。
--format :指定返回值的模板文件。
-l :显示最近创建的容器。
-n :列出最近创建的n个容器。
--no-trunc :不截断输出。
-q :静默模式,只显示容器编号。
-s :显示总的文件大小。
4、进入容器
-d :分离模式: 在后台运行
-i :即使没有附加也保持STDIN 打开
-t :分配一个伪终端
docker exec -it [容器ID] /bin/bash
docker exec -it [容器ID] /bin/sh
容器中执行命令
docker exec -it [容器ID] /bin/bash [命令]
docker exec -it [容器ID] /bin/sh [命令]
查询容器的信息
docker inspect [容器ID] | grep Mounts -A 20
创建一个容器应用不会自动关闭的容器
docker run -dit --network host -v /opt/xg_test:/opt/xg_test -v /etc/localtime:/etc/localtime:ro -e JAVA_OPTS='-Duser.timezone=GMT+08' --name='xg_java' -m 2048M --oom-kill-disable --cpuset-cpus="1,2" a3562aa0b991
查询docker日志
docker logs [容器ID]
查询docker信息
docker inspect [容器ID]
修改docker容器的时区
docker cp /usr/share/zoneinfo/Asia/Shanghai e2e68e7dd632:/etc/localtime
java镜像
docker pull java:8