赞
踩
#这一行指定了 Docker Compose 文件的版本。在这种情况下,使用的是版本 3。 version: "3" #这一部分定义了一个名为 "mysql" 的服务,使用 MySQL 5.7.19 版本的 Docker 镜像。它将创建一个 MySQL 容器。 services: mysql: image: mysql:5.7.19 #表示当容器停止时,它会自动重新启动,确保 MySQL 服务持续可用。 restart: always #为容器指定一个名称,即 "mysql"。 container\_name: mysql #将主机的 3306 端口映射到容器的 3306 端口,这使得你可以通过主机的 3306 端口访问 MySQL 服务。 ports: - 3306:3306 #将主机上的三个目录分别挂载到容器内的相应目录中,实现了配置、数据和日志的持久化存储。这对于避免数据丢失以及配置和日志的可维护性都非常重要。 volumes: - /data/software/mysql/conf/:/etc/mysql/conf.d - /data/software/mysql/data:/var/lib/mysql - /data/software/mysql/log/:/var/log/mysql #设置 MySQL 容器的环境变量。这些变量会在容器启动时传递给 MySQL 服务: environment: #设置 MySQL 的 root 用户密码为 "root"。 默认用户名为root MYSQL\_ROOT\_PASSWORD: root #创建一个名为 "test" 的数据库。 MYSQL\_DATABASE: test #创建一个名为 "bing" 的用户。 MYSQL\_USER: bing #设置用户 "bing" 的密码为 "123456"。 MYSQL\_PASSWORD: 123456
3、使用docker-compose启动
#-d 后台启动
docker compose -f docker-compose-mysql.yml up -d
启动成功
放开3306端口
#设置单个端口开放
sudo firewall-cmd --add-port=3306/tcp --permanent
#重新加载防火墙
sudo firewall-cmd --reload
连接成功
#吐槽一下 网上的都加了- 不懂为啥
docker compose -f docker-compose-mysql.yml down
成功
使用docker ps -a 查看到mysql镜像也被移除了
compose命令选项
-f, --file FILE 指定使用的 Compose 模板文件,默认为 docker-compose.yml,可以多次指定
-d, 在后台启动运行
-p, --project-name NAME 指定项目名称,默认将使用所在目录名称作为项目名
–x-networking 使用 Docker 的可拔插网络后端特性
–x-network-driver DRIVER 指定网络后端的驱动,默认为 bridge
–verbose 输出更多调试信息
-v, --version 打印版本并退出
compose常用命令
#启动 docker-compose up -d #关闭 docker-compose down #查看进程 docker-compose ps #查看日志 docker-compose logs #重新构建服务 docker-compose build #开始服务 docker-compose start #停止服务 docker-compose stop #重启服务 docker-compose restart
https://docs.docker.com/compose/gettingstarted/
编写dockerFile
# syntax=docker/dockerfile:1
FROM python:3.7-alpine
WORKDIR /code
ENV FLASK_APP=app.py
ENV FLASK_RUN_HOST=0.0.0.0
RUN apk add --no-cache gcc musl-dev linux-headers
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
EXPOSE 5000
COPY . .
CMD ["flask", "run"]
这个文件告诉docker:
/code
.flask
。requirements.txt
并安装 Python 依赖项。.
将项目中的当前目录复制到.
镜像中的workdir。flask run
。services:
web:
build: .
ports:
- "8000:5000"
redis:
image: "redis:alpine"
此 Compose 文件定义了两个服务:web
和redis
。
该服务使用从当前目录中web
构建的图像。Dockerfile
然后,它将容器和主机绑定到公开的端口8000
。此示例服务使用 Flask Web 服务器的默认端口5000
。
在浏览器中输入 http://localhost:8000/ 以查看应用程序正在运行。
如果显示连接被拒绝,可以看下8000端口有没有被放开。
#查看镜像
docker inspect <tag or id>
编辑compose.yaml项目目录中的文件以添加 服务的绑定挂载web
services: web: build: . **自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。** **深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!** **因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。** ![img](https://img-blog.csdnimg.cn/img_convert/df0592bca9640eafa1c12f088ffd77b9.png) ![img](https://img-blog.csdnimg.cn/img_convert/67f17181c9accda5de34f0810c0d3bfd.png) ![img](https://img-blog.csdnimg.cn/img_convert/93a17560fe6180f680525e2fccf26188.png) ![img](https://img-blog.csdnimg.cn/img_convert/32b1d5463a226718fc8303b5ae79ead5.png) ![img](https://img-blog.csdnimg.cn/img_convert/6f64b8a36818f8bf57ece90c2f87707f.png) **既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!** **由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新** **如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)** ![img](https://img-blog.csdnimg.cn/img_convert/0d2b48f694f82990e1aac057a6eae79f.jpeg) ### 最后的话 最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家! ### 资料预览 给大家整理的视频资料: ![](https://img-blog.csdnimg.cn/img_convert/7ba94372ff26ff4aafd9368723d5f4e4.png) 给大家整理的电子书资料: ![](https://img-blog.csdnimg.cn/img_convert/ac1c294c51ef0245ecbba6b6d11fb05d.png) **如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!** **一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!** ![img](https://img-blog.csdnimg.cn/img_convert/721e54c1673d87772795b18242d265ff.jpeg) 理的电子书资料: [外链图片转存中...(img-11ZY5ZiX-1712519445504)] **如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!** **一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!** [外链图片转存中...(img-55X8u9kL-1712519445505)]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。