环境配置以及基础概念
这里因为是云服务器,直接采用了OpenCloudOS8
然后我的docker版本 24.0.7 dockerCompose 版本v2.22.0
但是具体的docker版本与docker-Compose之间 可以直接查看**docker官网**
然后简短聊一下基础概念,保持一下同步。因为本篇内容主要是dockerfile与dockerCompose,就只聊这两个。
dockerfile
dockerfile 我理解就是一个对应image的描述文件,通过指令和环境变量等配置来去声明一个镜像的构建过程。
然后你也可以查看tomcat这种中间件的dockerfile,官方tomcat的地址
当然实际情况下,我们一般不用写的这么复杂,我们都是基于一些现成的镜像制作我们的自定义镜像
dockerCompose
dockerCompose 是管理,编排多容器而诞生的。而且他可以共享环境配置信息(也就是直接在yml中使用redis关键字,而不进行ip的具体指向),最关键的是他可以共享网络,避免因为网络问题导致的容器通讯问题。
这是ai的回复
项目代码
项目结构在官方文档中都有描述,其中docker-compose文件如下图路径
docker-compose
version : '3.8'
services:
ruoyi-mysql:
container_name: ruoyi-mysql
image: mysql:5.7
build:
context: ./mysql
ports:
- "3306:3306"
volumes:
- ./mysql/conf:/etc/mysql/conf.d
- ./mysql/logs:/logs
- ./mysql/data:/var/lib/mysql
- /etc/localtime:/etc/localtime:ro
command: [
'mysqld',
'--innodb-buffer-pool-size=80M',
'--character-set-server=utf8mb4',
'--collation-server=utf8mb4_unicode_ci',
'--default-time-zone=+8:00',
'--lower-case-table-names=1',
'--default-authentication-plugin=mysql_native_password'
]
environment:
MYSQL_DATABASE: 'ry_cloud_business'
MYSQL_ROOT_PASSWORD: 'password!@#123'
TZ: 'Asia/Shanghai'
networks:
- ruoyi-network
ruoyi-nacos:
container_name: ruoyi-nacos
image