【发布时间】:2021-08-22 00:48:48
【问题描述】:
我通过sai安装了laravel 8。默认情况下 docker-compose.yml 使用 mysql:8。但是我需要将mysql版本更改为5.6或5.7。
当我运行 sail up -d 而不是运行 docker-compose ps 时,我看到 mysql 容器没有运行:
myproject_mysql_1 docker-entrypoint.sh mysqld Exit 2
我的 docker-compose.yml(我只更改了“image”属性):
mysql:
image: 'mysql:5.7'
ports:
- '${FORWARD_DB_PORT:-3306}:3306'
environment:
MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
MYSQL_DATABASE: '${DB_DATABASE}'
MYSQL_USER: '${DB_USERNAME}'
MYSQL_PASSWORD: '${DB_PASSWORD}'
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
volumes:
- 'sailmysql:/var/lib/mysql'
networks:
- sail
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
我为 php 映像创建了新的 Dockerfile,我只在这个文件中将 php 版本从 8 更改为 7.3。
其他容器正常工作。当我将 mysql 版本更改为 8 时,mysql 容器可以正常工作。
【问题讨论】:
-
注意oracle不再支持5.6;这意味着没有安全修复,除非您向第三方(percona,一个)支付支持费用。很快,5.7 也将如此。
-
the log files有错误吗?
标签: php mysql laravel docker-compose laravel-sail