docker常用命令

1、基本概念

Docker 三个重要概念:镜像 (image) 和 容器 (Container)、仓库 (Repository)、

格式:docker run [选项] 镜像

docker run --name nginx -p 80:80 -d nginx:1.22.1

下载进行格式:docker pull  用户名 仓库名 :tag标签-操作系统

docker pull  datedog/nginx:1.24.0-alpine3.17

注:不带用户名的为官方镜像,带用户名的为非官方镜像。

2、docker命令行参数

Docker 操作命令分为: 管理命令与普通命令

1) 管理命令:为区分每个项目的命令, 比如说镜像操作, 就是以docker image 开头

2) 普通命令:是在docker 命令之后直接的命令, 比如说删除镜像 docker rmi

3) 管理命令相对于普通命令更清晰、严谨

# docker help

3、基础命令

docker info                                           守护进程的系统资源设置

docker search                                            Docker 仓库的查询

#docker search nginx    仓库里跟nginx有关的镜像

docker pull                                            Docker 仓库的下载

#docker pull nginx:tag(标签),不跟标签默认为latest(最新)

#docker pull registry.cn-beijing.aliyuncs.com/xxhf/mysql:5.7

                       仓库地址(域名或IP)          用户名/仓库名:tag标签

docker tag  旧镜像名  新镜像名          修改镜像名

#docker tag nginx:1.24.0-alpine  rongan369/nginx:1.24.0-alpine 

docker  login                                                 登录仓库(默认是官方仓库)

#登录仓库的验证信息存放在家目录下的  .docker/config.json文件

 echo “config.json中登录仓库的加密字符串”  | base64  -d

#还原非加密密码。

 echo  -n "root123" | base64

#base64方式加密

docker push  用户名/ 仓库名:tag            上传镜像到仓库

#docker push rongan369/nginx:1.24.0-alpine

注:只有镜像名在前面和仓库地址、用户名一致才可以push上传

docker images(image ls)                           Docker 镜像的查询(查看本地存储的镜像)

docker images  镜像名                       查看单个镜像

docker images   --no-trunc                        查看容器的完整ID号

docker rmi   容器ID                                             Docker镜像的删除

docker ps                                                       查看正在运行的容器

docker ps  -a                                             查看所有的容器(包括已结束退出的容器)

docker start/stop  容器名字/ID                         容器启动停止

docker run [选项镜像名                          容器的创建启动

docker save  镜像名 -o  镜像名的tar包       导出镜像

docker save  镜像名 > 镜像名.tar          导出镜像

docker load  < 镜像名.tar                         导入镜像

docker load  -i  镜像名.tar                         导入镜像

docker run --name MyWordPress --link db:mysql -p 8080:80 -d wordpress

命令提示符,命令关键字,起名字叫MyWordPress ,跟容器db做链接并且起个别名叫mysql,访问物理机8080会被端口映射到80,放到后台运行,镜像名字wordpress

#创建并启动容器

$ docker run [选项] IMAGE [COMMAND] [ARG]

#run:从镜像运行为容器

选项:

#--name=“容器新名字”:为容器指定一个名称

#-d:后台运行容器,并返回容器ID,也即启动守护式容器

#-i:以交互模式运行容器,通常与 -t 同时使用

#-t:为容器重新分配一个伪输入终端,打开一个tty终端通常与 -i 同时使用

#-P:随机端口映射

#-p:指定端口映射

#--restart=always  容器自动启动

#-h x.xx.xx                 设置容器主机名(域名)

#--dns xx.xx.xx.xx         设置容器使用的 DNS 服务器

#--dns-search hongfu.com           DNS 搜索设置,当无法解析域名时自动补齐搜索域

#--add-host                 将新增解析记录自动添加到hosts文件中和

#--rm                        服务停止时自动删除 

例:docker run --name test -it --rm 镜像ID /bin/bash,进入test容器,执行完命令退出后容器自动删除 

#--link 被链接容器名  使得容器和被链接容器之间可以相互通信

删除所有的容器:

方法一:

      docker  rm $(docker ps -a | awk '{print $1}' |grep -v CONTAINER )  --force

方法二:docker  rm $(docker ps -a -q)  --force

 

4、单一容器管理命令

每个容器被创建后,都会分配一个 CONTAINER ID 作为容器的唯一标示,后续对容器的启动、停止、修改、删除等所有操作,都是通过 CONTAINER ID 来完成,偏向于数据库概念中的主键

docker ps --no-trunc                                查看容器完整ID

docker stop/start CONTAINERID                 启动、停止容器

docker inspect NAME|ID                           查看容器所有基本信息

精确查找:

#docker inspect -f "{{.NetworkSetings.Networks.bridge.IPAddress}}" 容器ID号

docker logs  NAME|ID                                 查看容器日志

docker stats NAME|ID                                 查看容器所占用的系统资源

docker exec 容器名 容器内执行的命令          容器执行命令

docker exec -it 容器名 /bin/bash                  登入容器的bash

docker attach  容器名| ID                             登入容器,但是退出后容器也退出了

注:容器运行在后台时,需要是持续运行的应用程序,不然执行完后会结束进程。容器里面的进程一般都在前台运行。

5、#容器自动启动

对照组

$ docker start $(docker ps -a -q)

$ docker run --name always --restart=always -d 4a46

$ systemctl restart docker.service

$ docker ps -a

6、配置镜像加速器(如果文件不存在先创建)

 vim /etc/docker/daemon.json

{

  "registry-mirrors": [

    "https://hub-mirror.c.163.com",

    "https://mirror.baidubce.com",

    "https://ung2thfc.mirror.aliyuncs.com",

    "https://mirror.ccs.tencentyun.com"

  ]

}

 systemctl restart docker

 docker info

7、容器生命周期管理

启动容器

查看正在运行的容器

停止容器

查看已停止的容器

启动已停止的容器

删除容器

8、什么是容器化的应用

所谓的“容器化的应用”,或者“应用的容器化”,就是指应用程序不再直接和操作系统打交道,而是封装成镜像,再交给容器环境去运行。


镜像就是静态的应用容器,容器就是动态的应用镜像
 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值