Docker及Docker-Compose的实例用法
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,Docker是一个开源的容器引擎,它有助于更快地交付应用。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的任务,在Docker容器的处理下,只需要数秒就能完成。架构Docker dae
千家信息网最后更新 2025年02月03日Docker及Docker-Compose的实例用法
Docker是一个开源的容器引擎,它有助于更快地交付应用。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的任务,在Docker容器的处理下,只需要数秒就能完成。
架构
- Docker daemon( Docker守护进程):Docker daemon是一个运行在宿主机( DOCKER-HOST)的后台进程。可通过 Docker客户端与之通信。
- Client( Docker客户端):Docker客户端是 Docker的用户界面,它可以接受用户命令和配置标识,并与 Docker daemon通信。图中, docker build等都是 Docker的相关命令。
- Images( Docker镜像):Docker镜像是一个只读模板,它包含创建 Docker容器的说明。它和系统安装光盘有点像,使用系统安装光盘可以安装系统,同理,使用Docker镜像可以运行 Docker镜像中的程序。
- Container(容器):容器是镜像的可运行实例。镜像和容器的关系有点类似于面向对象中,类和对象的关系。可通过 Docker API或者 CLI命令来启停、移动、删除容器。
- Registry:Docker Registry是一个集中存储与分发镜像的服务。构建完 Docker镜像后,就可在当前宿主机上运行。但如果想要在其他机器上运行这个镜像,就需要手动复制。此时可借助Docker Registry来避免镜像的手动复制。一个 Docker Registry可包含多个 Docker仓库,每个仓库可包含多个镜像标签,每个标签对应一个 Docker镜像。这跟 Maven的仓库有点类似,如果把 Docker Registry比作Maven仓库的话,那么 Docker仓库就可理解为某jar包的路径,而镜像标签则可理解为jar包的版本号。Docker Registry可分为公有Docker Registry和私有Docker Registry。 最常用的DockerRegistry莫过于官网的Docker Hub, 这也是默认的Docker Registry。 Docker Hub上存放着大量优秀的镜像, 我们可使用Docker命令下载并使用。
安装
按照菜鸟的步骤,使用yum安装即可。
常用命令
镜像相关
- docker search java:在Docker Hub(或阿里镜像)仓库中搜索关键字(如java)的镜像
- docker pull java:8:从仓库中下载镜像,若要指定版本,则要在冒号后指定
- docker images:列出已经下载的镜像
- docker rmi java:删除本地镜像
- docker build:构建镜像
容器相关
- docker run -d -p 91:80 nginx :在后台运行nginx,若没有镜像则先下载,并将容器的80端口映射为宿主机的91端口。
- -d:后台运行
- -P:随机端口映射
- -p:指定端口映射
- -net:网络模式
- docker ps:列出运行中的容器
- docker ps -a :列出所有的容器
- docker stop 容器id:停止容器
- docker kill 容器id:强制停止容器
- docker start 容器id:启动已停止的容器
- docker inspect 容器id:查看容器的所有信息
- docker container logs 容器id:查看容器日志
- docker top 容器id:查看容器里的进程
- docker exec -it 容器id /bin/bash:进入容器
- exit:退出容器
- docker rm 容器id:删除已停止的容器
- docker rm -f 容器id:删除正在运行的容器
所有命令
- docker
- docker COMMAND --help
构建镜像
- 确定镜像模板:如java、nginx
- 新建Dockerfile文件
- 使用Dockerfile的指令完善Dockerfile的内容
- 在Dockerfile文件的所在路径执行docker build -t imageName:tag .,-t指定镜像名称,末尾的点标识Dockerfile文件的路径
- 执行docker run -d -p 92:80 imageName:tag即可
备注:RUN命令在 image 文件的构建阶段执行,执行结果都会打包进入 image 文件;CMD命令则是在容器启动后执行。另外,一个 Dockerfile 可以包含多个RUN命令,但是只能有一个CMD命令。注意,指定了CMD命令以后,docker container run命令就不能附加命令了,否则它会覆盖CMD命令。
Docker Compose
Docker Compose是 docker 提供的一个命令行工具,用来定义和运行由多个容器组成的应用。使用 compose,我们可以通过 YAML 文件声明式的定义应用程序的各个服务,并由单个命令完成应用的创建和启动。
以上就是本次介绍的全部相关知识点,如果有任何补充可以联系小编。
容器
镜像
命令
运行
仓库
文件
多个
端口
应用
后台
客户
客户端
宿主
标签
系统
路径
进程
光盘
宿主机
对象
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
压缩包动态加密服务器源码
省市县数据库
联想电脑服务器未登录无法配置
如何玩转网络技术
软件开发典型基线
组织观看网络安全警示教育片
软件开发价格估算表
地质灾害数据库录入
删除没有学生选的课程数据库
红领巾广播稿 网络安全
服务器的集群管理软件
福州备件管理软件开发
和平精英高级服务器视频
软件开发济南有什么公司
网络安全公司是网络公司吗
丽江提升网络安全技术收费标准
农安现代化网络安全质量服务
文明重启如何进自己的服务器
易语言数据库建立
正保集团软件开发
江阴先进网络技术代理价格
北邮华为信息与网络技术学院
棋牌游戏软件开发扫雷
恒华科技投资互联网
oracle中查询数据库表空间
壕嘉网络技术
扫描仪不能连接dhcp服务器
esxi 装服务器
服务器如何做阵列
学习视频软件开发