docker
docker 镜像命令
查看自己服务器中docker 镜像列表
搜索镜像
拉取镜像
不加tag(版本号) 即拉取docker仓库中该镜像的最新版本latest,加:tag 则是拉取指定版本
1 2
| docker pull 镜像名 docker pull 镜像名:tag
|
删除镜像
1 2 3 4 5 6 7 8
| # 删除一个 docker rmi -f 镜像名/镜像ID
# 删除多个 其镜像ID或镜像用用空格隔开即可 docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID
# 删除全部镜像 -a 意思为显示全部, -q 意思为只显示ID docker rmi -f $(docker images -aq)
|
强制删除镜像
1
| docker image rm 镜像名称/镜像ID
|
保存镜像
将我们的镜像保存为tar压缩文件,这样方便镜像转移和保存,然后可以在任何一台安装了docker的服务器上加载这个镜像
1
| docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字
|
加载镜像
任何装docker的服务器加载镜像保存文件,使其恢复为一个镜像
镜像标签
1 2 3
| docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
# 如果省略TAG 则会为镜像默认打上标签latest
|
docker 容器命令
查看正在运行容器列表
查看所有容器
包含正在运行和已停止的
运行一个容器
1 2 3 4 5 6
| docker run -it -d --name 要取的别名 镜像名:Tag /bin/bash
# -it 表示与容器进行交互式启动 # -d 表示可后台运行容器(守护式运行) # --name 给要运行的容器起的名字 # /bin/bash 交互路径
|
停止容器
删除容器
1 2 3 4 5 6 7 8
| # 删除一个容器 docker rm -f 容器名/容器ID
# 删除多个容器 空格隔开要删除的容器名或容器ID docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID
# 删除全部容器 docker rm -f $(docker ps -aq)
|
容器端口与服务器端口映射
在运行命令docker run后面跟以下参数:
进入容器
1
| docker exec -it 容器名/容器ID /bin/bash
|
从容器内退出到自己服务器中
1 2 3 4
| # 直接退出 未添加 -d(持久化运行容器) 时,执行此参数容器会被关闭 exit # 优雅退出 --- 无论是否添加-d 参数,执行此命令容器都不会被关闭 Ctrl + p + q
|
重启容器
启动容器
kill 容器
容器文件拷贝
无论容器是否开启 都可以进行拷贝
1 2 3 4 5
| # 从容器内拷出 docker cp 容器ID/名称: 容器内路径 容器外路径
# 从外部拷贝文件到容器内 docker cp 容器外路径 容器ID/名称: 容器内路径
|
查看容器日志
1
| docker logs -f --tail=要查看末尾多少行(默认all) 容器ID
|
数据挂载
-v命令可以多次使用,即一个容器可以同时挂载多个文件
1
| -v 宿主机文件存储位置:容器内文件位置 -v 宿主机文件存储位置:容器内文件位置 -v 宿主机文件存储位置:容器内文件位置
|
不删容器,设置容器开机自启动
1 2 3
| docker update --restart=always 容器Id 或者 容器名 或 docker container update --restart=always 容器Id 或者 容器名
|
更换容器名
1
| docker rename 容器ID/容器名 新容器名
|
docker 网卡命令
查看docker网卡
删除docker网卡
查看docker网卡的相关详细信息
1
| docker network inspect 网卡id
|
自己提交一个镜像
1
| docker commit -m="提交信息" -a="作者信息" 容器名/容器ID 提交后的镜像名:Tag
|
docker 修改默认根目录
1 2 3 4 5 6 7 8
| systemctl status docker systemctl stop docker mkdir -p /newdisk/docker mv /var/lib/docker /newdisk/docker ln -s /newdisk/docker /var/lib/docker systemctl start docker systemctl status docker docker info
|
docker-compose
查看版本
使用docker-compose启动容器,根据yml创建service
使用docker-compose后台启动
指定yaml启动
1
| docker-compose up -f xxx.yaml
|
查看启动成功的service
查看images
停止/启动service
1
| docker-compose stop/start
|
删除service[同时会删除掉network和volume]
进入到某个service
1
| docker-compose exec ypn-web sh
|
如果前端代码有更新,可以使用此命令重新打包镜像
1
| docker-compose build ypn-web
|
服务都启动成功后,使用此命令行可清除none镜像
查询容器运行日志
1
| docker logs ypn-web -f --tail 100
|