【云原生·Docker】常用命令

简介: 【云原生·Docker】常用命令

       本篇文章对你或许比较枯燥,但是学docker的前提就是要知道基础命令。一个命令往往有很多个参数,一种参数一种用途,本篇将针对常用命令重点讲解,可收藏保存以备不时之需。

       学习命令前,你要先了解docker的三个概念。

打包:把服务运行所需的依赖、第三方库、打包成一个安装包。

分发:把你打包好的安装包上传到一个镜像仓库,其他人可以很方便的安装部署。

部署:使用分发下来的安装包,一条命令就可以运行起来,自动模拟出一模一样的运行环境,不管是在 Windows/Mac/Linux。

1、管理命令

1. systemctl start docker           #启动docker
2. systemctl stop docker            #关闭docker
3. systemctl restart docker         #重启docker
4. systemctl enable docker          #开机自启
5. systemctl status docker          #查看运行状态
6. docker kill 容器id               #强制停止当前容器
7. docker pause 容器id              #挂起容器
8. docker unpause 容器id            #恢复挂起
9. docker commit 容器id 镜像名       #把容器制作成镜像
10. docker volume ls                 #查看 volume 列表
11. docker network ls                #查看网络列表

2、帮助命令

1. docker --help                   #帮助命令
2. docker version                  #查看版本信息
3. docker info                     #查看版本信息

帮助文档的地址:docker

3、镜像命令

镜像:可以理解为软件安装包,方便进行传播和安装。

1. docker images           #查看本地主机上的镜像(-a:列出所有镜像;-q:只显示镜像id;-aq:显示所有镜像的id)
2. docker search nginx     #搜索nginx镜像(--filter=STARS=3000  搜索出来的镜像就是starts 大于等于3000的,用来过滤下载数量)
3. docker pull nginx       #下载nginx镜像(默认为最新版,如需指定版本:docker pull nginx:1.21.0)
4. docker rmi {服务名|ID}   #删除镜像(-f选项强制删除;删除多个镜像用空格分隔)
5. docker rmi -f $(docker images -aq)          #删除全部镜像

下载nginx镜像并查看

1. [root@doc ~]# docker pull nginx
2. [root@doc ~]# docker images
3. REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
4. nginx        latest    605c77e624dd   14 months ago   141MB
REPOSITORY TAG IMAGE ID CREATED SIZE
镜像的仓库源 镜像标签 镜像ID 镜像创建的时间 镜像大小

4、容器命令

       容器:软件安装后的状态,每个运行环境都是独立的、隔离的。可以理解为有很多个房间,而每一个房间只有一种物品,这种物品又是独一无二的,这种称之为容器。

4.1.查看容器

1. docker ps [参数]             # 列出当前正在运行的容器(等同于docker container list)
2.         -a                  # 带出历史运行过的容器
3.         -q                  # 只显示容器的编号

4.2.创建容器

1. docker run [参数] 镜像名
2. # 参数说明
3.     --name="Name"     容器名字   tomcat01   tomcat02,  用来区分容器
4.     -i                运行容器
5.     -d                后台方式运行
6.     -t                启动容器后自动进入命令行
7.     -it               使用交互方式运行,进入容器查看
8.     -id               使用守护方式运行,不进入容器查看
9.     -p                指定容器的端口 -p  8080:8080
10.     -p                ip:主机端口:容器端口
11.     -p                主机端口:容器端口(常用)
12.     -p                容器端口(随机映射到外部端口,一般32000+)
13.     -P                随机映射端口(大写)

案例:

1. 1.创建容器my_web1、2,nginx为最新版,启动环境/bin/bash 
2. docker run -it --name=my_web1 nginx:latest /bin/bash            #创建并启动容器(交互式)使用exit退出容器,从容器中退回主机,容器关闭(想要容器持续运行,添加参数-d)
3. docker run -id --name=my_web2 nginx:latest /bin/bash            #创建容器但不启动(守护式)
4. docker exec -it my_web2 /bin/bash                               #登录容器
5. 2.创建容器,指定端口和随机端口映射
6. docker run -d --name web1 -p 8080:80 nginx /bin/bash            #指定端口映射
7. docker run -d --name web2 -p 8081:80 nginx /bin/bash            #指定端口映射
8. docker run -d --name web3 -p 80 nginx  /bin/bash                #随机映射端口
9. docker run -d --name web4 -P nginx  /bin/bash                   #随机映射端口

4.3.删除容器

1. docker rm {容器id|容器名}                                 # 删除指定容器,不能删除正在运行的容器,如果要强制删除添加-f选项  
2. docker rm -f $(docker ps -aq)                           # 删除所有的容器
3. docker ps -a -q | xargs docker rm -f                    # 删除所有的容器

4.4.拷贝文件

1. docker cp 需要拷贝的文件或目录 容器名称:容器目录          #把宿主机的文件拷贝到容器里
2. docker cp 容器名称:容器目录 需要拷贝的文件或目录          #从容器中拷贝文件到宿主机

4.5.查看容器IP

docker inspect 容器id

5、部署服务

要求:使用centos安装nginx等,并制作成镜像。

1. [root@doc ~]# docker search centos      #搜索镜像
2. [root@doc ~]# docker pull centos:7      #拉取镜像

        下图内容提示下载镜像成功。

        使用命令查看下载的镜像、版本、ID等信息。

        守护式创建名为nginx1的容器,映射端口号80。

1. [root@doc ~]# docker run -itd --name nginx1 -p 80:80 centos:7 /bin/bash
2. 0d97dd210fd5cd151560744694dcc09d5d56ac960741bb91109d9fad4788ff9e
3. [root@doc ~]# docker exec -it nginx1 /bin/bash
4. [root@c280bd02a56b /]#                  #登录成功

        创建好容器后,下载nginx服务,以及所需的工具,通过commit命令制作成镜像,下次需要使用nginx服务使用nginx_v1镜像,直接就可以创建了。

1. [root@c280bd02a56b /]# yum -y install epel-release                          #下载epel源
2. [root@c280bd02a56b /]# yum -y install vim net-tolls nginx                   #下载工具及网站服务
3. [root@doc ~]# docker commit nginx1 nginx_v1                                 #把nginx1容器制作成镜像,镜像名为nginx_v1    
4. sha256:8ac8aab96ad07a4d75852ebd96adf8622b2045aa263c94b35be44e6b11485180


相关文章
|
8月前
|
存储 Java Linux
【Docker】(2)还在浏览网页寻找Docker命令?本文全面列举与使用Docker里的各个命令!想要什么命令直接从本文拿!
docker有着比VM更少的抽象层 由于Docker不需要Hypervisor实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源 因此在CPU、内存利用率上Docker将会在效率上有明显优势 docker利用的时宿主机的内核,而不需要加载操作系统OS内核 当新建一个容器时,Docker不需要和虚拟机一样重新加载一个操作系统内核 进而避免引寻、加载操作系统内核返回等比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载OS,返回新建过程时分钟级别的。 而Docker由于直接利用宿主机的操作系统,则省略了返回过程,因此新建一个Docker容器只需
884 124
|
11月前
|
安全 Unix Linux
Docker中授权普通用户使用docker命令以及解决无权限访问/var/run/docker.sock错误。
通过上述步骤,可以有效解决普通用户无法使用Docker命令的问题,同时处理 `/var/run/docker.sock`权限错误。这样的设置不仅方便用户使用Docker提供的各项服务,同时还能保护系统的安全性。在进行此类配置更改时,请确保理解每一步骤的作用及潜在的安全风险,尤其是在修改文件权限时。在实际的操作中,始终应该努力保持系统的最低必要权限,避免过度放宽权限,这是保障系统安全的一个重要方针。
3656 75
|
8月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
715 2
|
Docker 容器
Docker run命令-p参数详解
本文介绍Docker端口映射的基础用法。通过`docker run -p <宿主机端口>:<容器端口>`实现端口映射,例如`-p 5000:80`将宿主机5000端口映射到容器80端口,外部访问宿主机5000端口时流量会转发至容器内部的80端口。示例命令中,`-d`用于后台运行,`--restart=always`确保容器自动重启,`--name`指定容器名称。部署完成后可通过`http://服务器IP地址:5000`验证服务是否正常运行。
1386 57
|
网络协议 Ubuntu Docker
Docker Compose--命令说明
Docker Compose--命令说明
2257 30
|
11月前
|
Docker 容器
熟悉Docker容器管理命令:start、stop与restart详细使用指南
掌握这些Docker容器管理命令对于维护应用程序的正常运行至关重要。在实际操作中,应注意容器配置、关联资源以及日志等信息,确保各项操作都能够顺畅并且安全地执行。
3336 0
|
Ubuntu Linux 开发者
常用的Docker命令:docker_cmd_sheet
以上就是一些常用的Docker命令,希望能帮助你更好地驾驭这个强大的工具。记住,Docker就像是一个魔法咒语,只有真正理解和熟练使用,才能发挥出它的最大魔力。
261 22
|
Shell 应用服务中间件 nginx
docker 镜像的部分常用命令
docker镜像常用命令
390 16
|
关系型数据库 MySQL Docker
|
关系型数据库 MySQL 数据库
Docker 安装常用软件相关命令
本文介绍了在CentOS 7.9系统上安装Docker的详细步骤,包括添加阿里云镜像源、安装Docker及相关组件、启动服务以及配置镜像加速。同时,还展示了如何通过Docker安装MySQL 5.7版本数据库,涵盖拉取镜像、创建数据目录、运行容器及配置挂载点等操作,并提供验证安装成功的命令和截图。适合需要部署Docker与MySQL环境的用户参考。
841 4

热门文章

最新文章