首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >docker- Bitnami、MariaDB、PrestaShop和PHPMyAdmin的Compose.yml不能正常工作。

docker- Bitnami、MariaDB、PrestaShop和PHPMyAdmin的Compose.yml不能正常工作。
EN

Stack Overflow用户
提问于 2019-08-14 14:57:08
回答 1查看 1.4K关注 0票数 0

我的第一个目标是编写一个带有以下内容的docker-compose.yml文件:

  • 1 MariaDB服务器的对接器
  • PrestaShop-1.7服务器的1个码头
  • 1 PHPMyAdmin服务器的对接器

你能帮我让它正常工作吗?

然后,我的第二个目标是设置密码和不允许“无密码”。

你好,阿诺德。

我正在使用bitnami的dockers,所以我已经启动了以下脚本:

代码语言:javascript
复制
version: "3"

networks:
  prestashop-network:
    driver: bridge

services:
  mariadb:
    image: 'bitnami/mariadb:10.3'
    environment:
      - MARIADB_USER=bn_prestashop
      - MARIADB_DATABASE=bitnami_prestashop
      - ALLOW_EMPTY_PASSWORD=yes
    networks: 
      - prestashop-network
    volumes:
      - 'mariadb_data:/bitnami'
    ports:
      - 3307:3306

  phpmyadmin:
    image: bitnami/phpmyadmin:latest
    volumes:
      - 'phpmyadmin_data:/bitnami'
    depends_on:
      - mariadb
    ports: 
      - 81:80 
    environment:
      - PHPMYADMIN_ALLOW_NO_PASSWORD=true
    networks: 
      - prestashop-network

  prestashop_1.7:
    image: 'bitnami/prestashop:1.7'
    volumes:
      - 'prestashop_data:/bitnami'
      - ./docker/prestashop/custom-php.ini:/usr/local/etc/php/conf.d/custom.ini
      - ./docker/prestashop/phpinfo.php:/var/www/html/phpinfo.php
    depends_on:
      - mariadb
    ports:
      - 8085:80
      - 8086:443
    environment:
      - PRESTASHOP_FIRST_NAME=Toto
      - PRESTASHOP_LAST_NAME=FAMILLE
      - PRESTASHOP_PASSWORD=bitnami1
      - PRESTASHOP_EMAIL=user@example.com
      - PRESTASHOP_HOST=localhost
      - PRESTASHOP_COUNTRY=fr
      - PRESTASHOP_LANGUAGE=fr
      - MARIADB_HOST=mariadb
      - MARIADB_PORT_NUMBER=3306
      - PRESTASHOP_DATABASE_USER=bn_prestashop
      - PRESTASHOP_DATABASE_NAME=bitnami_prestashop
      - PRESTASHOP_DATABASE_PASSWORD=bitnami1
      - ALLOW_EMPTY_PASSWORD=yes
      - MARIADB_ROOT_USER=root
      - MARIADB_ROOT_PASSWORD=
      - MYSQL_CLIENT_CREATE_DATABASE_NAME=bitnami_prestashop
      - MYSQL_CLIENT_CREATE_DATABASE_USER=bn_prestashop
      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=587
      - SMTP_PROTOCOL=tls
      - SMTP_USER=your_email@gmail.com
      - SMTP_PASSWORD=your_password
    networks: 
      - prestashop-network  

volumes:
  mariadb_data:
    driver: local
  prestashop_data:
    driver: local
  phpmyadmin_data:
    driver: local

有关信息,我使用Mojave和下面的docker工具版本:

代码语言:javascript
复制
$ docker-compose version
docker-compose version 1.24.1, build 4667896b
docker-py version: 3.7.3
CPython version: 3.6.8
OpenSSL version: OpenSSL 1.1.0j  20 Nov 2018

当我使用以下命令启动时:

代码语言:javascript
复制
docker-compose up

然后下载并启动不同的图像。

当我尝试使用PhpMyAdmin访问http://localhost:81实例时,我可以使用根用户而不使用密码正确地到达PhpMyAdmin实例。

我有两个主要问题:

  • 我看到'prestashop‘数据库是创建的,但是空的
  • 当我试图使用PrestaShop访问http://localhost:8085实例时,我会得到一个错误500
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-15 09:32:19

在绑定您的坞-撰写文件时,我得到了以下错误:

代码语言:javascript
复制
mariadb_1         | 2019-08-15  9:28:47 13 [Warning] Access denied for user 'bn_prestashop'@'192.168.48.4' (using password: YES)
prestashop_1.7_1  | mysql-c ERROR [canConnect] Connection with 'bn_prestashop' user is unsuccessful

您还需要在mariadb容器中设置用户密码。

这个码头-撰写文件为我工作,也许你可以建立从这里。

代码语言:javascript
复制
version: '2'

services:
  mariadb:
    image: 'bitnami/mariadb:10.1'
    environment:
      - MARIADB_USER=bn_prestashop
      - MARIADB_DATABASE=bitnami_prestashop
      - MARIADB_PASSWORD=my_passwd
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - 'mariadb_data:/bitnami'
  prestashop:
    image: 'bitnami/prestashop:1.7'
    environment:
      - MARIADB_HOST=mariadb
      - MARIADB_PORT_NUMBER=3306
      - PRESTASHOP_DATABASE_USER=bn_prestashop
      - PRESTASHOP_DATABASE_NAME=bitnami_prestashop
      - PRESTASHOP_DATABASE_PASSWORD=my_passwd
      - ALLOW_EMPTY_PASSWORD=yes
      - PRESTASHOP_FIRST_NAME=Toto
      - PRESTASHOP_LAST_NAME=FAMILLE
      - PRESTASHOP_PASSWORD=bitnami1
      - PRESTASHOP_EMAIL=user@example.com
      - PRESTASHOP_HOST=localhost
      - PRESTASHOP_COUNTRY=fr
      - PRESTASHOP_LANGUAGE=fr
      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=587
      - SMTP_PROTOCOL=tls
      - SMTP_USER=your_email@gmail.com
      - SMTP_PASSWORD=your_password
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - 'prestashop_data:/bitnami'
    depends_on:
      - mariadb
  phpmyadmin:
    image: 'bitnami/phpmyadmin:4'
    ports:
      - '8080:80'
      - '8443:443'
    depends_on:
      - mariadb
    volumes:
      - 'phpmyadmin_data:/bitnami'
volumes:
  mariadb_data:
    driver: local
  prestashop_data:
    driver: local
  phpmyadmin_data:
    driver: local
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57497232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档