docker命令大全
https://blog.csdn.net/talkxin/article/details/83061973
容器生命周期管理
## docker run 构建并运行容器
--name 为容器指定名称 --name="dockername"
-d 指定容器为后台容器,并返回容器ID
-m 内存限制,格式是数字加单位,单位可以为 b,k,m,g。最小为 4M
-p 端口映射 格式(物理端口:容器端口) -p 80:80
-e 设置环境变量 -e username="ritchie"
## docker rm 删除容器
docker rm container
## 在容器中执行命令
docker exec mydb mysql -uroot -pwd123456 -e "show databases;"
## 进入容器内bash
docker exec -it mysql bash
run 创建一个新容器并运行
start 开启一个容器并使其在后台运行
stop 停止一个容器
restart 重启一个容器
kill 杀掉一个容器进程
rm 删除容器
pause 暂停容器
unpause 恢复暂停容器
create 从镜像中创建一个容器
exec 对一个容器执行shell命令
------------------------------------------------------------------------------------------
容器操作
## docker ps 查看容器(默认查看运行中的)
docker ps -a 查看所有容器, 包括未运行的
## 查看容器所有状态信息,获取容器/镜像 元数据,docker inspect 容器/镜像
docker inspect mysql3306
## 查看 容器ip 地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' mysql3306
## docker logs 查看容器日志 ,一直显示日志
docker logs container --follow
## 查看端口;(使用容器ID 或者 容器名称)
docker port ID/NAMES
## 修改容器名称
docker rename oldContainer newContainer
默认volume
docker volume list #得到volume name
docker volume inspect volume name #上一步的volume name,但是看不到是哪个容器(容器名)在用这个volume
挂载volume
将my-volume目录挂载到container中的/mydata目录
docker run -it -v my-volume:/mydata alpine sh
然后可以查看到给my-volume的volume
docker volume inspect my-volume
[
{
"CreatedAt": "2018-03-28T14:52:49Z",
"Driver": "local",
"Labels": null,
"Mountpoint": "/var/lib/docker/volumes/my-volume/_data",
"Name": "my-volume",
"Options": {},
"Scope": "local"
}
]
ps 列出容器
inspect 获取容器或镜像的元数据
top 查看正在运行中的容器进程信息
attach 链接正在运行的容器
events 从docker服务器获取事件
logs 获取docker日志
wait 让一个容器进入等待,使其进入阻塞状态
export 将一个容器的文件系统打包至tar
port 列出一个容器的端口映射情况
container 管理已经运行的容器的
deploy 部署新的堆栈或更新已有堆栈的
update 更新容器
rename 重命名容器
volume 卷管理
------------------------------------------------------------------------------------
容器文件系统操作
## 容器本地文件互拷
docker cp [本地文件] [容器名称]:[容器内目录] 拷贝文件到容器中
docker cp ./jobs-consumer-realtime.py dc.jobs:/app/datacenter/
docker cp [容器名称]:[容器内目录] [本地文件] 从容器中拷贝文件到宿主机器
commit 提交一个容器的文件系统,使之生成一个新的镜像
cp 向一个正在运行的容器复制文件,或将容器中的文件复制出来
diff 检查一个容器文件系统更改情况
--------------------------------------------------------------------------------------------------
镜像仓库操作
login docker登入
logout docker登出
pull 拉取镜像
push 推送镜像至服务器
search 在docker hub上查询镜像
----------------------------------------------------------------------------------------------------------
镜像管理
## 查看本地镜像
docker images
## docker rmi mysql/mysql-server:5.7 删除镜像
docker rmi REPOSITORY:TAG(仓库:标签) 或者 docker rmi IMAGEID(镜像id)
## docker tag 3cc9613ef3ba mysql:5.7 重命名镜像 docker tag IMAGEID(镜像id)
REPOSITORY:TAG(仓库:标签)或者 docker tag REPOSITORY:TAG(仓库:标签)
REPOSITORY:TAG(仓库:标签)
images 列出镜像
rmi 删除镜像
tag 修改本地某一镜像的标记,使其镜像属于某一仓库
build 通过指定Dockerfile文件编译镜像
history 查看镜像历史
save 将制定镜像保存成tar文件
load 从tar中恢复镜像
import 从tar中创建一个新镜像
checkpoint 设置checkpoint,类似于恢复点,可以让镜像撤销到曾经设置的某一个checkpoint上
image docker镜像管理
manifest docker镜像清单管理
trust docker可信镜像管理
------------------------------------------------------------------------------------------------------------------------
集群管理
swarm docker集群管理工具
node docker集群节点控制
stack docker集群堆栈管理
---------------------------------------------------------------------------------------------------------------------
其他命令
info 查询docker信息
version 查询docker版本
system docker系统管理
stats docker容器资源使用统计
config 管理docker配置
network docker网络管理
plugin docker插件管理
secret docker敏感信息管理
service docker服务管理
f