Estoy tratando de subir phpserver a través de docker-compose. Puse 3 archivos en mi directorio de trabajo.
.env docker-compose.yml Dockerfile
.env
##PATHS DB_PATH_HOST=./databases APP_PATH_HOST=./blog APP_PATH_CONTAINER=/var/www/html/ MYSQL_ROOT_PASSWORD=123456docker-compose.yml
versión: '3'
services: web: build: . environment: - APACHE_RUN_USER=www-data volumes: - ${APP_PATH_HOST}: ${APP_PATH_CONTAINER} ports: - 8080:80 working_dir: - ${APP_PATH_CONTAINER} db: image: mariadb restart: always environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} volumes: - ${DB_PATH_HOST}: /var/lib/mysql adminer: image: adminer restart: always ports: - 6080:8080 composer: image: composer:1.7 volumes: - ${APP_PATH_HOST}: ${APP_PATH_CONTAINER} working_dir: ${APP_PATH_CONTAINER} command: composer instally Dockerfile
FROM php:7.2-apache RUN docker-php-ext-install \ pdo_mysql \ && a2enmod rewritePero después de intentar correr
docker-compose up --buildtengo el problema
ERROR: The Compose file '.\docker-compose.yml' is invalid because: services.web.working_dir contains an invalid type, it should be a string services.composer.volumes contains an invalid type, it should be a string services.web.volumes contains an invalid type, it should be a string services.db.volumes contains an invalid type, it should be a stringTraté de cambiar la versión del archivo docker-compose a 2; no funciona. Traté de usar '' y "" el mismo problema.
Quiero ejecutar mi servidor con éxito.
Los siguientes dos formatos funcionan:
Formato #1
environment: MYSQL_ROOT_PASSWORD: rootpasswordFormato #2
environment: - MYSQL_ROOT_PASSWORD=rootpasswordversion: "3.3" services: web: build: . environment: - APACHE_RUN_USER=www-data volumes: - "${APP_PATH_HOST}: ${APP_PATH_CONTAINER}" ports: - 8080:80 working_dir: ${APP_PATH_CONTAINER} db: image: mariadb restart: always environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} volumes: - "${DB_PATH_HOST}:/var/lib/mysql" adminer: image: adminer restart: always ports: - 6080:8080 composer: image: composer:1.7 volumes: - "${APP_PATH_HOST}: ${APP_PATH_CONTAINER}" working_dir: ${APP_PATH_CONTAINER} command: composer installLo que usó para working_dir fue una lista. Necesitaba una cuerda.
Quiero conectarme desde el administrador a la versión de postgres: '3'
services: web: build: . environment: - APACHE_RUN_USER=www-data volumes: - ./blog:/var/www/html/ ports: - 8080:80 working_dir: /var/www/html/ db: image: postgres restart: always environment: POSTGRES_PASSWORD: kisphp POSTGRES_USER: root POSTGRES_DB: kisphp ports: - "5432:5432" volumes: - ./postgres:/var/lib/postgresql/data adminer: image: adminer restart: always ports: - "6080:8080"y tengo el siguiente error.
SQLSTATE[08006] [7] FATAL: password authentication failed for user "root"