Docker容器操作常用命令|学习笔记

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 快速学习Docker容器操作常用命令

开发者学堂课程【SpringBoot快速掌握 - 核心技术:Docker容器操作常用命令 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/612/detail/9270


Docker容器操作常用命令

一、容器操作

操作:运行

命令:docker run --name container-name -d image-name

eg:docker run -name myredis-d redis

说明:--name :自定义容器名

-d : 后台运行

image-name: 指定镜像模板

流程:

软件镜像(QQ安装程序)----运行镜像----产生一个容器(正在运行的软件,运行的QQ ) ;

首先 docker images ,发现没有镜像,

之后 docker search tomcat 镜像 ,来下载官方的镜像。

1. 搜索镜像

[root@localhost ~]# docker search tomcat

2、拉取镜像

[root@localhost ~]# docker pull tomcat

Docker pull,如果下载版本号,已标签为准,如果没有默认latest标签

3、根据镜像启动容器

查看镜像 docker images ,之后运行镜像 docker run--name mytomcat-d

tomcat :这里如果有标签,要写上标签,如果是唯一命令,就可以运行。

(2)列表

docker ps  (查看运行中的容器);

加上-a;可以查看所有容器

之后看 docker ps 来看哪些容器在运行,启动了 mytomcat

4. docker ps 查看运行中的容器

如果测试能不能访问 tomcat ,不能访问的原因,因为是 comcat 容器是以 docker  的形式装上来的,但是容器是 tomcat 的容器,访问虚拟机8080是访问不到容器里面的,所以要做一个映射,就要重新装。此时停止容器。

(3)停止

docker stop container-name/container-i.

停止当前你运行的容器

5、停止运行中的容器 docker stop

容器的 id

查看所有的容器

Docker ps -a(是查看所有的)

(4)启动

启动容器

docker start container-name/container-id

容器

6、查看所有的杳器 docker ps -a

7、启动容器

docker start 容器 id

接下来删除

(5)删除

docker rm container-id

删除指定

之后 docker ps -a 发现容器就没有了

7、docker rm 容器 id

8、做一个外面真正能访问的 tomcat 容器

首先 docker images 发现了下载的 tomcat 镜像,把镜像运行,就可以产生 tomcat 容器用 docker run 命令,之后加上几个参数--name 是容器的名字,-d 是某个镜像的名字然后在启动时加上-p 参数,就是端口映射,把当前虚拟机的端口映射到容器内部的端口,把虚拟机的8080映射到容器里。接下来重新运行 docker run--name 加容器的名字或者 -d 代表后台运行,如果 -p 代表端口映射,先写虚拟机端口8888映射到容器 tomcat8080 就 8888:8080,如果启动哪个镜像,就 tomcat 直接写上就行。

(6)端口映射 -p 6379:6379eg:docker run -d -p 6379:6379 -Iname myredis docker.io/redis

-p: 主机端口(映射到)容器内部的端口

9、启动一个做了端口映射的 tomcat

[root@localhost ~]# docker run -d -p 8888:8080 tomcat

-d 代表后台运行 -p 代表主机端口映射容器端口 主机端口:容器内部的端口

启动之后用 docker ps 发现已经启动起来,之后虚拟机的8888映射到容器里的8080,此时在外面访问 8888 就行,此时 tomcat 就可以起作用了。此时能起作用的原因是没有打开防火墙,。

10、为了演示简单关闭了 linux 的防火墙

service firewalld status ;查看防火墙状态

service firewalld stop ∶关闭防火

(7)容器日志 docker logs container-name/container-id

用 docker log 查看日志,可以看到整个启动日志。

11、查看容器的日志

docker logs container-name/ container-id

12、更多命令参考

https://docs.docker.com/engine/reference/commandline/dockerl

这里可以参考每一个镜像的文档。

Docker run-d -p8889-8888 这里说明一个镜像可以启动多个容器。

并且每一个容器都是独立的,互不干扰。

目录
打赏
0
0
0
0
116
分享
相关文章
Docker run命令-p参数详解
本文介绍Docker端口映射的基础用法。通过`docker run -p <宿主机端口>:<容器端口>`实现端口映射,例如`-p 5000:80`将宿主机5000端口映射到容器80端口,外部访问宿主机5000端口时流量会转发至容器内部的80端口。示例命令中,`-d`用于后台运行,`--restart=always`确保容器自动重启,`--name`指定容器名称。部署完成后可通过`http://服务器IP地址:5000`验证服务是否正常运行。
Docker网关冲突导致容器启动网络异常解决方案
当执行`docker-compose up`命令时,服务器网络可能因Docker创建新网桥导致IP段冲突而中断。原因是Docker默认的docker0网卡(172.17.0.1/16)与宿主机网络地址段重叠,引发路由异常。解决方法为修改docker0地址段,通过配置`/etc/docker/daemon.json`调整为非冲突段(如192.168.200.1/24),并重启服务。同时,在`docker-compose.yml`中指定网络模式为`bridge`,最后通过检查docker0地址、网络接口列表及测试容器启动验证修复效果。
【赵渝强老师】数据库不适合Docker容器化部署的原因
本文介绍了在Docker中部署MySQL数据库并实现数据持久化的方法,同时分析了数据库不适合容器化的原因。通过具体步骤演示如何拉取镜像、创建持久化目录及启动容器,确保数据安全存储。然而,由于数据安全性、硬件资源争用、网络带宽限制及额外隔离层等问题,数据库服务并不完全适合Docker容器化部署。文中还提到数据库一旦部署通常无需频繁升级,与Docker易于重构和重新部署的特点不符。
204 18
【赵渝强老师】数据库不适合Docker容器化部署的原因
在Docker容器中部署GitLab服务器的步骤(面向Ubuntu 16.04)
现在,你已经成功地在Docker上部署了GitLab。这就是我们在星际中的壮举,轻松如同土豆一样简单!星际旅行结束,靠岸,打开舱门,迎接全新的代码时代。Prepare to code, astronaut!
94 12
Docker Compose--命令说明
Docker Compose--命令说明
386 30
获取Docker基础使用方法:让容器化变得轻松。
对于Docker的初学者来说,了解这些基础知识点就足够了。实践是最好的老师,越是动手操作,对Docker的理解会越深。祝阅读这篇文章的开发者们一切顺利,愿你在Docker的海洋中航行顺利!
110 17
常用的Docker命令:docker_cmd_sheet
以上就是一些常用的Docker命令,希望能帮助你更好地驾驭这个强大的工具。记住,Docker就像是一个魔法咒语,只有真正理解和熟练使用,才能发挥出它的最大魔力。
91 22
Docker 安装常用软件相关命令
本文介绍了在CentOS 7.9系统上安装Docker的详细步骤,包括添加阿里云镜像源、安装Docker及相关组件、启动服务以及配置镜像加速。同时,还展示了如何通过Docker安装MySQL 5.7版本数据库,涵盖拉取镜像、创建数据目录、运行容器及配置挂载点等操作,并提供验证安装成功的命令和截图。适合需要部署Docker与MySQL环境的用户参考。
195 5
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问