Docker-命令

一.Docker图示

image

二.Docker服务

1.systemctl/service查看

# 启动docker服务
systemctl start docker
service docker start
# 重启docker服务
systemctl restart docker
service docker restart
# 关闭docker服务
systemctl stop docker
service docker stop
# 状态docker服务
systemctl status docker

三.Docker命令

1.构建镜像

# 从无到有,构建镜像
# -t设置标签,镜像名字:标签 ; 目录为DockerFile地址
docker build -t $projects:$dates  /opt/test/baojj/dockerfile/gxxmt/ccms_pack

2.根据镜像创建一个新的容器,并执行一些命令

# 将镜像放入容器中(docker create),然后将容器启动,使之变成运行时容器(docker start)
# --name=为容器指定一个名称
# -d后台运行容器,并返回容器ID ; 
# -t为容器重新分配一个伪输入终端,-i以交互模式运行容器 ; -p指定端口映射,主机端口:容器端口
# -v本地目录:容器目录 ; 主机目录挂载到容器目录
docker run --name=$projects -d -ti -p 47066:8080 -v /data/gx_ccms_pack:uct/data $projects:$dates
#  --restart=always,当 docker 服务重启时,容器自动启动
# -e PARAMS传递参数
docker run --name=$projects --restart=always -e PARAMS="-Dspring.profiles.active=qas -Dspring.cloud.config.uri=http://192.168.220.126:5000/config"  $projects:$dates

3.启动/停止/重启容器

# 启动镜像
# docker start 比 docker run少了一步
# docker start 启动一个已经存在的镜像文件;容器id/name
docker start 容器id/name
# 停止镜像
docker stop 容器id/name
# 重启镜像
docker restart 容器id/name

4.删除镜像

# 删除镜像IMAGE
docker rmi  IMAGE

5.删除容器

# 删除容器
# -f通过 SIGKILL 信号强制删除一个运行中的容器
docker rm -f 容器id/name

6.从容器创建一个新的镜像

# -a提交的镜像作者 ; -c使用Dockerfile指令来创建镜像
# -m :提交时的说明文字 ; -p :在commit时,将容器暂停
# a404c6c174a2=容器id ; mymysql:v1=镜像名
docker commit -a "dingkw" -m "test" a404c6c174a2  mymysql:v1 

7.进入容器

# 进入容器
docker exec -it 容器id/name /bin/bash

8.从镜像仓库中拉取或者更新指定镜像

# -a拉取所有 tagged 镜像
# 从Docker Hub下载REPOSITORY为java的所有镜像
docker pull -a java

9.导出镜像

docker sava images/容器id > 容器名字.tar

10.导入镜像

docker load < gx_ccms20201120.tar

11.标记镜像

# 将名称为“ httpd”的本地映像标记为“ version1.0”的“ fedora”存储库
 docker tag httpd fedora/httpd:version1.0
# 将ID为“ 0e5574283393”的本地映像标记为“ version1.0”的“ fedora”存储库
docker tag 0e5574283393 fedora/httpd:version1.0

12.宿主机与容器复制

#将文件从容器复制到主机
docker cp 7d8b9078bf90:/opt/product/tools/tomcat/lib /opt/test/dingkw/
#将文件从主机复制到容器
docker cp /opt/test/dingkw/lib/catalina.jar 7d8b9078bf90:/opt/product/tools/tomcat/lib

13.Docker-compose

参考:https://www.cnblogs.com/cocowool/p/docker-compose-introduce.html

# 启动所有服务
docker-compose up
# 在后台运行容器 
docker-compose up -d
# -f 指定使用的Compose模板文件,默认为docker-compose.yml,可以多次指定
docker-compose -f docker-compose.yml up -d
# 列出项目中目前所有的容器
docker-compose ps
# 启动已经存在的服务容器
docker-compose start
# 停止正在运行的容器
docker-compose stop
# 重启项目中的服务 -t, –timeout TIMEOUT,指定重启前停止容器的超时(默认为10秒)
docker-compose restart [options] [SERVICE...]

14.登录仓库

# 登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
docker login
# 登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
docker logout

四.Docker批命令

1、启动所有容器

docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)

2、关闭所有容器

# 关闭所有
docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)
# 关闭所有正在运行的容器
docker stop $(docker ps | awk '{ print $1}' | tail -n +2)

3、删除所有容器

docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2)

4、删除所有镜像(慎用)

docker rmi $(docker images | awk '{print $3}' |tail -n +2)
posted @ 2021-09-12 14:10  难删亦删  阅读(63)  评论(0)    收藏  举报