我尝试设置一个码头容器,这取决于来自码头枢纽的开放项目/社区容器。我已经在我的机器上运行了一个开放项目,我想将我的内容从那里迁移到docker容器。
码头容器正在运行,没有任何问题,但我已经发现,PostgreSQL是在容器中使用的,而在我的机器上,我使用MySQL。
在我的容器中迁移我的MySQL有好的方法吗?或者更好的方法:如何在容器中使用MySQL而不是PostgreSQL?最后一种可能会使导入MySQL转储变得容易。
谢谢,并致以最良好的问候,SKiD。
发布于 2018-08-16 14:18:57
我不熟悉OpenProject。
当您说您使用MySQL时,您是在使用MySQL w/ OpenProject吗?还是MySQL只是你的偏好?
在容器中运行最少数量的进程被认为是最佳实践。在OpenProject的例子中,我假设至少有一些Web/http守护进程和数据库。在这种情况下,更好的做法是将一个容器用于Web服务组件(链接到)另一个带有数据库的容器。
在这种情况下,不仅可以更容易地使用您喜欢的数据库,而且还可以扩展与数据库单独服务的web。如果网络服务器或应用程序升级,升级也会更容易。
总之..。我建议您对OpenProject人员进行bug,并要求他们将容器拆分为>=2,并建议他们考虑启用Postgres或MySQL作为后端。
您将面临在其容器映像中替换Postgres的挑战。
您可以将您的MySQL数据库导出到其Postgres数据库中。
HTH。
发布于 2018-10-29 09:25:27
我已经实现了类似的事情与下面的码头撰写文件
version: '3'
services:
openproject:
image: openproject/community:7.4.3
environment:
- DATABASE_URL=mysql2://root:root@openprojectdb:3306/openproject
- EMAIL_DELIVERY_METHOD=smtp
- SMTP_ADDRESS=smtp.sendgrid.net
- SMTP_PORT=587
- SMTP_AUTHENTICATION=login
- SMTP_ENABLE_STARTTLS_AUTO=true
- SMTP_USER_NAME=#################
- SMTP_PASSWORD==#################
- SECRET_KEY_BASE==#################
volumes:
- /var/db/openproject/static:/var/db/openproject
ports:
- 8080:80
openprojectdb:
image: mysql:5.6
volumes:
- /var/db/openproject/mysql:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: root有几件事要记住-
此外,对于不使用堆栈/组合的单个容器,请参阅https://www.openproject.org/docker/的官方文档,其中提到
docker -d . -e开放项目/社区:8
https://stackoverflow.com/questions/51878543
复制相似问题