我是 Docker 新手。一位 Devop 同事在 github 存储库中创建了一个 WSO2 docker 镜像。他使用此类图像来创建暂存和生产实例。
The docker-compose.yml
is:
#openssl req -newkey rsa:2048 -nodes -keyout domain.key -x509 -days 365 -out domain.crt
version: '2'
services:
mysql:
image: mysql:5.7.10
ports:
- "3306:3306"
volumes:
- ./docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
environment:
- MYSQL_DATABASE=userdb
- MYSQL_USER=dbwso2am
- MYSQL_PASSWORD=dbwso2am
- MYSQL_ROOT_PASSWORD=dbwso2am
wso2am:
image: salte/wso2am:1.9.1
depends_on:
- mysql
volumes:
- ./keys:/keys
environment:
- VIRTUAL_HOST=apimanager.qa.xxx.build
- VIRTUAL_PORT=9443
- VIRTUAL_PROTO=https
- OFFSET=3
- EXTERNAL_HOSTNAME=apimanager.qa.xxx.build
- DATABASE_HOSTNAME=mysql
- DATABASE_PORT=3306
- DATABASE_USER=dbwso2am
- DATABASE_PASSWORD=dbwso2am
- PUBLIC_CERTIFICATE=/keys/domain.crt
- PRIVATE_KEY=/keys/domain.key
- PRIVATE_KEY_PASSWORD=wso2am
- ADMIN_PASSWORD=admin
我想修改一些WSO2配置 https://docs.wso2.com/display/AM1100/Configuring+Caching存储在一些xml
文件并将其投入生产。
我应该如何进行?这可能吗?我应该修改docker镜像吗?如果是的话怎么办?或者我应该在经典的 github 存储库中安装 WSO2,修改xml
并根据此存储库的内容重新创建 docker 映像?
您不需要仅仅为了更改一个 xml 就重新创建整个图像。
您可以通过卷或命令来替换它。
例如,我有链接的共享文件夹,您可以在容器上运行命令。
假设您在 /home/share 中有共享文件夹,并将其链接到 /c/Share
因此,您将新的 xml 文件放入 Share 中,容器也可以看到它。
接下来运行此命令:
docker exec a5866aee4e90 cp -i /home/share/some.xml /home/the/path/you/chose
Docker exec 用于运行命令。
您可以进入控制台并运行多个命令:
docker exec -it a5866aee4e90 bash
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)