我通过风帆安装了 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 容器可以正常工作。