首页 > 其他分享 >Docker——docker命令操作全集

Docker——docker命令操作全集

时间:2023-04-04 18:04:31浏览次数:58  
标签:容器 run -- 目录 镜像 Docker 全集 docker


摘要

本博文主要是介绍docker的实际的操作的命令,同时展示docker中具体的操作。docker作为容器的重要的编排工具,同时也是在面试中重要的考核标准。改工具的学习是的软件开发和软件后端的重要一个部分,为微服务的开发打下一个基础。同时后面将详细介绍的docker的原理。

Docker——docker命令操作全集_Docker

一、docker的安装(linux)

1.1 使用官方安装脚本自动安装:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

 也可以使用国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh

1.2 通过仓库的方式进行安装

#更新 apt 包索引
sudo apt-get update

#添加 Docker 的官方 GPG 密钥:
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

#更新 apt 包索引
sudo apt-get update

#安装最新版本的 Docker Engine-Community 和 containerd ,或者转到下一步安装特定版本:
sudo apt-get install docker-ce docker-ce-cli containerd.io

#测试 Docker 是否安装成功,输入以下指令,打印出以下信息则安装成功:
sudo docker run hello-world

#删除安装包
sudo apt-get purge docker-ce

二、docker的镜像源的修改

由于docker默认的源为国外官方源,下载速度较慢,所以在学习和使用中可改为国内的镜像源,这样速度会提高狠多。 

国内Docker镜像仓库名称

链接URL

Docker 官方中国区

https://registry.docker-cn.com

网易

http://hub-mirror.c.163.com

中国科学技术大学

https://docker.mirrors.ustc.edu.cn

阿里云

https://pee6w651.mirror.aliyuncs.com

3.1 辑 /etc/docker/daemon.json

vi /etc/docker/daemon.json

#添加如下网易镜像源
{
    "registry-mirrors": ["http://hub-mirror.c.163.com"]
}

3.2 编辑/etc/sysconfig/docker

在OPTIONS变量后追加参数  --registry-mirror=镜像源地址

vi /etc/sysconfig/docker

#编辑OPTIONS,添加中国科技大学的镜像源
OPTIONS='--selinux-enabled --log-driver=journald --registry mirror=https://docker.mirrors.ustc.edu.cn'

3.3 编辑/etc/default/docker

添加DOCKER_OPTS="--registry-mirror=镜像源"

vi /etc/default/docker

#指定镜像源为阿里的镜像源
DOCKER_OPTS="--registry-mirror=https://pee6w651.mirror.aliyuncs.com"
其他:docker pull拉取镜像时也可以指定仓库下载地址

3.4 修改/etc/docker/daemon.json

如果没有先建一个即可

sudo vim /etc/docker/daemon.json

修改配置文件

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

使配置文件生效

sudo systemctl daemon-reload

重启Docker

sudo service docker restart

测试配置是否成功

docker search nginx

Docker——docker命令操作全集_Docker_02

三、docker常用命令

3.1 docker启动与停止

#启动:
systemctl start docker

#重启docker服务
systemctl restart docker或者是sudo service docker restart

#关闭docker
docker service docker stop或者是docker systemctl stop docker

#启动docker镜像
docker start 应用名称


#设置开机启动
sudo systemctl enable docker

#查看docker状态
sudo systemctl status docker

#查看docker内容器的运行状态
sudo docker stats

#查看docker概要信息
sudo docker info

#查看docker 帮助文档
sudo docker --help

3.2 镜像的管理命令

# 查看镜像

docker images

# 搜索镜像

docker search 镜像名称

# 拉取镜像

docker pull 镜像名称

# 删除单个镜像

docker rmi 镜像ID

# 删除多个镜像

docker rmi 镜像ID 镜像ID 镜像ID

3.3 容器的管理命令

# 查看正在运行的容器

docker ps

# 查看停止的容器

docker ps -f status=exited

# 查看所有容器(包括运行和停止)。

docker ps -a

# 创建与启动容器

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

    -i:表示运行容器;
    -t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端;
    --name:为创建的容器命名;
    -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个 -v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上;
    -d:在 run 后面加上 -d 参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加 -i -t 两个参数,创建容器后就会自动进容器里);
    -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个 -p 做多个端口映射。
    -P:随机使用宿主机的可用端口与容器内暴露的端口映射。

# 创建并进入容器

docker run -it --name 容器名称 镜像名称:标签 /bin/bash

# 退出当前容器

exit

# 守护式方式创建容器

docker run -di --name 容器名称 镜像名称:标签

# 登录守护式容器方式

docker exec -it 容器名称|容器ID /bin/bash

# 停止容器

docker stop 容器名称|容器ID

# 启动容器

docker start 容器名称|容器ID

# 文件拷贝

docker cp 需要拷贝的文件或目录 容器名称:容器目录

# 也可以将文件从容器内拷贝出来。

docker cp 容器名称:容器目录 需要拷贝的文件或目录

# 目录挂载(容器数据卷操作)

docker run -di -v /mydata/docker_centos/data:/usr/local/data --name centos7-01 centos:7

# 多目录挂载

docker run -di -v /宿主机目录:/容器目录 -v /宿主机目录2:/容器目录2 镜像名

# 匿名挂载

docker run -di -v /usr/local/data --name centos7-02 centos:7

# 查看 volume 数据卷信息

docker volume ls

# 匿名挂载
docker run -di -v docker_centos_data:/usr/local/data --name centos7-03 centos:7

# 查看 volume 数据卷信息
docker volume ls

# 指定目录挂载

docker run -di -v /mydata/docker_centos/data:/usr/local/data --name centos7-01 centos:7

# 多目录挂载

docker run -di -v /宿主机目录:/容器目录 -v /宿主机目录2:/容器目录2 镜像名

# 只读。只能通过修改宿主机内容实现对容器的数据管理。

docker run -it -v /宿主机目录:/容器目录:ro 镜像名

# 读写,默认。宿主机和容器可以双向操作数据。

docker run -it -v /宿主机目录:/容器目录:rw 镜像名

# 查看容器 IP 地址

docker inspect 容器名称|容器ID

#删除容器

# 删除指定容器

docker rm 容器名称|容器ID

# 删除多个容器

docker rm 容器名称|容器ID 容器名称|容器ID

四、镜像的备份与恢复迁移命令

# docker save 将指定镜像保存成 tar 归档文件。

docker save [OPTIONS] IMAGE [IMAGE...]
docker save -o /root/mycentos7.tar mycentos:7

# 使用 docker load 导入 docker save 命令导出的镜像归档文件。

docker load [OPTIONS]
docker load -i mycentos7.tar

# 镜像迁移

镜像迁移同时涉及到了上面两个操作,备份和恢复。 我们可以将任何一个 Docker 镜像从一台机器迁移到另一台机器。在迁移过程中,首先我们要把容器构建为 Docker 镜像。然后, 该 Docker 镜像被作为 tar 包文件保存到本地。此时只需要拷贝或移动该镜像到我们想要的机器上,恢复该镜像并运行容器即可。

五、Dokcer 的网络管理命令

# docker 默认网络

docker network ls

# 通过 docker network create 命令可以创建自定义网络模式,创建一个基于 bridge 网络模式的自定义网络模式 custom_network

docker network create custom_network

# 通过自定义网络模式 custom_network 创建容器:

docker run -di --name bbox05 --net custom_network busybox

# 通过 docker network connect 网络名称 容器名称 为容器连接新的网络模式

docker network connect bridge bbox05

# 通过 docker network disconnect 网络名称 容器名称 命令断开网络

docker network disconnect custom_network bbox05

# 移除网络

docker network rm custom_network

# 容器间网络通信

docker run -di --name default_bbox01 busybox

docker run -di --name default_bbox02 busybox

博文参考

https://www.exception.site/docker

Docker Dockerfile | 菜鸟教程

标签:容器,run,--,目录,镜像,Docker,全集,docker
From: https://blog.51cto.com/u_13643065/6169224

相关文章

  • Docker 部署单机 Zookeeper + exporter
    目录资源清单一、Docker安装1.使用国内yum源2.卸载旧版本的docker3.安装Docker20.10版本4.设置镜像加速5.启动docker二、Docker-compose安装1.Docker-compose安装2.查看docker-compose版本三、部署服务1.docker-compose.yaml资源清单2.创建目录结构3./conf/......
  • Docker 部署单机 Redis + exporter
    目录资源清单一、Docker安装1.使用国内yum源2.卸载旧版本的docker3.安装Docker20.10版本4.设置镜像加速5.启动docker二、Docker-compose安装1.Docker-compose安装2.查看docker-compose版本三、部署服务1.docker-compose.yaml资源清单2.创建目录结构3./etc/r......
  • Docker 部署单机 ES + exporter
    目录资源清单一、Docker安装1.使用国内yum源2.卸载旧版本的docker3.安装Docker20.10版本4.设置镜像加速5.启动docker二、Docker-compose安装1.Docker-compose安装2.查看docker-compose版本三、部署服务1.docker-compose.yaml资源清单2.elasticsearch.yml外......
  • docker compose的v1\v2版本安装及使用上的区别
    【docker系列】dockercompose的v1\v2版本安装及使用上的区别文章目录一、简介二、安装dockerCompose1.x版本三、安装dockercomposev2版本一、简介DockerCompose可以按照规范的定义文件(docker-compose.yml)一次性启动运行多个具有依赖关系的容器。本质上说,DockerCompos......
  • docker打包、压缩镜像并载入
    1、打包镜像#docker打包所有镜像dockersave$(dockerimages--format'{{.Repository}}:{{.Tag}}')-oallimages.tar#打包指定镜像,使用grep过滤dockersave$(dockerimages--format'{{.Repository}}:{{.Tag}}'|grepopenjdk)-oopenjdk.tar 2、打包并压......
  • Apache/doris docker启动异常
    环境CPU:x86_64操作系统:ArchLinux(单节点,虚拟机,invmwareworkstation16player)Kernel:Linuxarchlinux6.2.9-arch1-1dorisdocker版本:apache/doris1.2.2-be-x86_64apache/doris1.2.2-fe-x86_64现象启动fe和be后,fe在十几秒后exit,be正常复现流程1.拉......
  • #docker基础命令
    一、镜像命令1、拉取镜像从镜像仓库中下载镜像到本地,一般是保存在/var/lib/docker目录(分层下载)#拉取最新版本的镜像dockerpullubuntu#拉取指定版本镜像dockerpullubuntu:14.042、查看本地镜像列表同一个仓库源可以有多个TAG,代表这个仓库源的不同版本,使用REPOSITO......
  • docker 部署mongoDB集群与读写分离
    一.生成key文件需要注意集群中所有机器都需要用同一个文件,否则会出现验证失败的情况#生成keyopensslrand-base64756>/data/volume/mongodb/configdb/mongo.key#设置访问权限chmod400/data/volume/mongodb/configdb/mongo.key 二.启动MongoDB的docker容器d......
  • Docker 镜像及容器命令
    授人以鱼不如授人以渔,先列出官方命令文档docker命令文档地址:https://docs.docker.com/engine/reference/commandline/images/镜像相关指令镜像是容器的模板,这句话是考点,记住啦docker镜像基本命令大致分为,查看镜像,搜索镜像,下载镜像、删除镜像1、查看镜像查看镜像命令/doc......
  • 微服务docker 命令
    Consul的Docker镜像使用1.镜像官方网址:https://hub.docker.com/_/consul2.pull镜像(拉取consul镜像):dockerpullconsul:1.15.13.创建容器(默认http管理端口:8500)dockerrun-p8500:8500consul:1.6.04.访问管理网址http://localhost:8500/......