zlb

docker常用命令

docker 环境 CentOS 8.1

Docker 修改镜像源地址
  1. Docker 官方中国区
https://registry.docker-cn.com
  1. 网易
http://hub-mirror.c.163.com
  1. ustc --中国科学技术大学
https://docker.mirrors.ustc.edu.cn

/etc/docker/daemon.json

如果没有daemon.json文件 创建

{ 
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] 
}

重启docker

systemctl restart docker
启动 docker
systemctl start docker
守护进程重启
sudo systemctl daemon-reload
重启docker服务
systemctl restart  docker
重启docker服务
 sudo service docker restart
关闭docker 服务

docker service docker stop

关闭docker
docker systemctl stop docker
拉取镜像
 docker pull tomcat:jdk8-openjdk 

 docker pull tomcat:8.5.55-jdk8-openjdk
查看镜像
  docker images  
显示正在运行的容器:
[root@localhost HMK]# docker ps
显示所有容器,包括未运行的: 
[root@localhost HMK]# docker ps -a
运行镜像
docker run -d --name tomcat_test -p 8088:8080  7254ff7719c0
docker run -d --name tomcat_test -v /etc/localtime:/etc/localtime -p 2080:8080 tomcat:latest

docker run -d --name tomcat_contract -p 8088:8080 -v  /home/tomcat_contract/conf:/usr/local/tomcat/conf -v  /home/tomcat_contract/webapps:/usr/local/tomcat/webapps -v  /home/tomcat_contract/logs/:/usr/local/tomcat/logs -v  /home/tomcat_contract/logsRoot/:/usr/local/tomcat/logsRoot 7254ff7719c0

–name 容器名称
-p 8088:8080 8088 是宿主机端口 8080是tomcat容器端口 8080映射到2080
tomcat:latest 镜像名称及版本
-v /etc/localtime:/etc/localtime 容器使用宿主机时间、时区

-v 挂载目录 /home/tomcat/conf 宿主机的配置目录,/usr/local/tomcat/conf 容器的目录

:前面是宿主机的目录,后面是容器里面的目录

-d:表示指定容器后台运行

8e4c7e070ba2 镜像id

进入容器
 docker exec -it mysql_docker /bin/bash
  docker exec -it mcyl_test0 /bin/bash
   docker exec -it zilliz_search_images_demo /bin/bash

当前目录还是在tomcat镜像生成的容器目录下,可以使用:ctrl+p+q不退出容器的方式返回到宿主机目录下

出容器
ctrl+p+q

使用:ctrl+p+q不退出容器的方式返回到宿主机目录下

重启容器

docker restart 容器ID

docker restart 54bad744146a
停止容器

docker stop 容器id

docker stop 31290cf1cc00
启动一个已经停止的容器实例

docker start 容器名称 或者 容器id tomcat_contract

docker start 31290cf1cc00
删除容器

可使用 -f 参数强制删除容器

docker rm mcyl_test0
查看所有的容器
docker ps -a 
查看运行中的容器
docker ps 

liunx 命令

重命名文件夹

mv webapps webapps2

mv webapps.dist/ webapps
使用docker commit命令将修改后的容器生成新的镜像

docker commit命令详解:
作用:将运行着的容器映射成新的镜像
格式: docker commit -a='作者-这个随意写' -m='‘修改内容--随意写' 容器名称或者ID 新生成镜像的名称
例子:

docker commit -a='lzhang2019' -m='修改主页404错误' e8a903b0d543  tomcat-8.5.55-jdk8-openjdk-dev:v0.1
导出images
保存镜像

docker save 命令 将镜像保存成一个文件。

docker save -o tomcat-8.5.55-jdk8-openjdk-dev-v0.1.tar tomcat-8.5.55-jdk8-openjdk-dev:v0.1

-o 输出文件名称

tomcat-8.5.55-jdk8-openjdk-dev:v0.1 镜像的名称和tag

2)我们还可以同时将多个 image 打包成一个文件,比如下面将镜像库中的 postgresmongo 打包:

docker save -o images.tar postgres:9.6 mongo:3.4
载入镜像

使用 docker load 命令则可将这个镜像文件载入进来。

docker load < hangge_server.tar
从容器拷贝文件到宿主机

docker cp 容器名:容器中要拷贝的文件名及其路径 要拷贝到宿主机里面对应的路径

拷贝容器中 tomcat的conf目录 到 宿主机 的 home/tomcat 目录下

docker cp 16d0e13769a8:/usr/local/tomcat/conf /home/tomcat_contract/

拷贝容器中 tomcat的webapps目录 到 宿主机 的 home/tomcat 目录下

docker cp 827e39c506b1:/usr/local/tomcat/webapps /home/tomcat_contract/
删除images

使用 docker load 命令则可将这个镜像文件载入进来。

 docker rmi 6e07337dc2a2
实时日志
docker logs -f --tail=100  mcyl_test0
查看容器的详细信息
docker inspect mysql_docker
docker inspect mcyl_test0
Dockerfile 创建镜像
docker build -t runoob-ubuntu:v1 .

docker build -t mcyl-vue:v1.0 .

用户定义的网桥和默认网桥之间区别

1、用户定义的网桥可在容器之间提供自动DNS解析。

2、用户定义的桥可提供更好的隔离。

3、容器可以随时随地从用户定义的网络连接和分离。

4、每个用户定义的网络都会创建一个可配置的网桥

5、默认网桥网络上的链接容器共享环境变量。

创建用户定义的网桥网络

使用该docker network create命令。

$ docker network create my-net
删除用户定义的网桥网络

使用该docker network rm命令。如果容器当前已连接到网络, 请先断开它们的连接

$ docker network rm my-net
将容器连接到用户定义的桥

创建新容器时,可以指定一个或多个--network标志。本示例将Nginx容器连接到my-net网络。它还将容器中的端口80发布到Docker主机上的端口8080,以便外部客户端可以访问该端口。连接到my-net 网络的任何其他容器都可以访问该my-nginx容器上的所有端口,反之亦然。

$ docker create --name my-nginx \
  --network my-net \
  --publish 8080:80 \
  nginx:latest

要将运行中的容器连接到现有的用户定义的网桥,请使用以下 docker network connect命令。以下命令将一个已经在运行的my-nginx容器连接 到一个已经存在的my-net网络:

$ docker network connect my-net my-nginx 
  docker network connect my-net mysql_docker
  docker network connect my-net mcyl_test0
断开容器与用户定义的桥的连接

要将运行中的容器与用户定义的网桥断开连接,请使用以下docker network disconnect命令。以下命令将my-nginx 容器与my-net网络断开连接。

$ docker network disconnect my-net my-nginx

posted on 2020-06-07 14:48  zlb  阅读(200)  评论(0编辑  收藏  举报

导航