Docker指令大全
2022-07-07 16:13:40 31 举报
AI智能生成
Docker指令大全
作者其他创作
大纲/内容
docker images
docker images -q
只显示镜像ID
列出已安装所有镜像
docker pull 镜像名:标签名
拉取镜像
docker rmi 镜像ID
删除镜像
镜像
-i 表示交互式运行容器(就是创建容器后,马上会启动容器,并进入容器 ),通常与 -t 同时使用
--name 为创建的容器指定一个名称
-d 创建一个守护式容器在后台运行,并返回容器ID
-p 表示端口映射,格式为: -p 宿主机端口:容器端口
OPTIONS
docker run [OPTIONS] 镜像名:标签名
创建容器后,马上会启动容器,并进入容器
docker run -it --name=mycentos centos:7 /bin/bash
交互式容器
果对于一个需要长期运行的容器来说,我们可以创建一个守护式容器(后台运行的容器)
docker run -id --name=mycentos2 centos:7
守护式容器
创建容器
docker ps
查看正在运行容器
docker ps -a
查看所有的容器(启动与未启动的容器)
docker ps –l
查看最后一次运行的容器
docker ps -f status=exited
查看停止的容器
docker stats
查看容器的cpu占用率
docker logs -f -t --tail 100 容器id
查看容器日志
查看容器
docker start `docker ps -a -q`
docker start 容器名称|容器id
启动所有运行过的容器
启动容器
docker exec -it 容器名称|容器id /bin/bash
登录容器
docker inspect mycentos2
docker inspect --format='{{.NetworkSettings.IPAddress}}' mycentos2
容器IP地址
查看容器内部细节
exit
退出并停止当前容器, 注意在容器内部的命令行执行
Ctrl + p + q
退出不停止当前容器
退出容器
docker stop 容器名称|容器id
停止正在运行的容器(正常停止)
docker kill 容器名称|容器id
强制停止正在运行的容器
docker stop `docker ps -a -q`
停止所有在运行的容器
停止容器
只能删除停止的容器
docker rm 容器名称 | 容器ID
删除指定的容器
中运行中的容器无法删除,所以先停再删
docker rm `docker ps -a -q`
删除所有容器
删除容器
容器
自由主题
在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。使用 -v 选项
docker run -id -v /宿主机绝对路径目录:/容器内目录 --name=容器名 镜像名
docker run -id -v /opt:/opt --name=mycentos3 centos:7
docker run -id -v /宿主机绝对路径目录:/容器内目录:ro --name=容器名 镜像名
docker run -id -v /dataHost:/dataContainer:ro --name=mycentos4 centos:7
只读(Read-only)权限
数据目录挂载
docker pull mysql:5.7
拉取MySQL镜像
docker run -id --name=cz_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
创建 MySQL 容器
docker exec -it mxg_mysql /bin/bash
mysql -u root -p
MySQL 部署
docker pull redis
拉取Redis镜像
docker run -id --name=cz_redis -p 6379:6379 redis
创建Redis容器
Redis 部署
docker pull tomcat:8
拉取tomcat镜像
创建tomcat容器用于 Web应用,并且进行目录映射
docker run -id --name=cz_tomcat -p 8888:8080 -v /usr/local/project:/usr/local/tomcat/webapps --privileged=true tomcat:8
在宿主机的 /usr/local/project 目录创建cz目录,往里增加一个 hello.html 文件
http://192.168.10.11:8888/cz/hello.html
创建tomcat容器
Tomcat 部署
docker pull rabbitmq:management
注意:如果docker pull rabbitmq 后面不带management,启动rabbitmq后是无法打开管理界面的,所以我们要下载带management插件的rabbitmq.
拉取 RabbitMQ 镜像
docker run -id --name=cz_rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:management
方式一
启动镜像(设置用户名密码)
docker run -id --name=cz_rabbitmq -e RABBITMQ_DEFAULT_USER=username -e RABBITMQ_DEFAULT_PASS=password -p 5672:5672 -p 15672:15672 rabbitmq:management
方式二
创建 RabbitMQ 容器
访问Rabbit管理界面
RabbitMQ 部署
docker search zookeeperdocker run -d -p 2181:2181 --name=cz_zookeeper --privileged zookeeper
zk部署
docker pull nacos/nacos-serverdocker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server# 登录密码默认nacos/nacos# standalone代表着单机模式运行,非集群模式
nacos部署
docker pull elasticsearch:7.2.0docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e \"discovery.type=single-node\" -d elasticsearch:7.2.0curl http://localhost:9200
docker pull kibana:7.2.0docker run --name kibana --link=elasticsearch:test -p 5601:5601 -d kibana:7.2.0docker start kibanadocker run --name kibana --link=elasticsearch:test -p 5601:5601 -d kibana:7.2.0docker start kibana
es\\kibana部署
部署应用
docker commit [-m=\"提交的描述信息\"] [-a=\"创建者\"] 容器名称|容器ID 生成的镜像名[:标签名]
docker inspect --format='{{.Mounts}}' 容器名
查看是否有挂载目录
mycentos2 是容器名称mycentos_new 是新的镜像名称
docker commit mycentos2 mycentos_new:1.1
docker run -it --name=mxg_mycentos_new mycentos_new:1.1 /bin/bash
创建并登录容器
无目录挂载-容器保存为镜像
有目录挂载情况(难点)
容器保存为镜像
docker save -o mycentos.tar mycentos_new:1.1
-o 指定输出到的文件执行后,运行 ls 命令即可看到打成的tar包, 因为有463M所以打包要一会
备份镜像
docker rmi mycentos_new:1.1
删除掉 mycentos_new:1.1 镜像(注意先停止并删除所有引用了的容器)
docker load -i mycentos.tar
行恢复 mycentos_new:1.1 镜像
镜像恢复与迁移
备份与迁移
用于构建一个新的Docker镜像的脚本文件,是由一系列命令和参数构成的脚本
1. 编写 Dockerfile 文件2. 通过 docker build 命令生成新的镜像3. 通过 docker run 命令运行
构建新的镜像步骤
1. 每条指令的保留字都必须为大写字母且后面至少要有一个参数2. 执行顺序按从上往下执行。3. # 用于注释4. 每条指令都会创建一个新的镜像层,并对镜像进行提交
语法规则
1. Docker 从基础镜像运行一个容器2. 执行每一条指定并对容器作出修改3. 执行类似 docker commit 的操作提交一个新的镜像层4. docker 再基于刚提交的镜像运行一个新容器5. 执行 Dockerfile 中的下一条指令直到所有指令都执行完成
执行流程
常用指令
Dockerfile语法
Docker实操指南
0 条评论
下一页