背景:我需要更改payara-server主密码。根据文档,主密码必须与密钥库中的密码匹配。 truststore以使SSL证书正常工作。使我的网站运行https而不是http。
我在Docker Container through the guide中运行了Payara-Server:
我尝试更改payaradomain主密码,但是我收到了非循环错误。 1.确保payara域名不运行。
- ./asadmin stop-domain --force=true payaradomain
当我运行此命令时,而domain1被杀死。 &安培;然后踢出了docker容器:
./asadmin stop-domain --kill=true payaradomain
执行此命令时:
./asadmin list-domains
响应:
domain1 running
payaradomain not running
Command list-domains executed successfully.
然后尝试了命令:
./asadmin stop-domain --force=true payaradomain
响应:
CLI306: Warning - The server located at /opt/payara41/glassfish/domains/payaradomain is not running.
我很满意,但是当我尝试时:
./asadmin change-master-password payaradomain
我收到了这个回复:
Domain payaradomain at /opt/payara41/glassfish/domains/payaradomain is running. Stop it first.
我附上了以下图片:请帮忙......
答案 0 :(得分:2)
如果要在docker中配置Payara服务器,包括主密码,则应通过扩展默认的Payara泊坞窗图像来创建自己的docker镜像。这是最简单的Dockerfile:
FROM payara/server-full
# specify a new master password "newpassword" instead of the default password "changeit"
RUN echo 'AS_ADMIN_MASTERPASSWORD=changeit\nAS_ADMIN_NEWMASTERPASSWORD=newpassword' >> /opt/masterpwdfile
# execute asadmin command to apply the new master password
RUN ${PAYARA_PATH}/bin/asadmin change-master-password --passwordfile=/opt/masterpwdfile payaradomain
然后,您可以使用以下内容构建自定义泊坞窗图像:
docker build -t my-payara/server-full .
然后运行my-payara/server-full
而不是payara/server-full
。
另请注意,使用默认的Payara泊坞窗图像时,应指定PAYARA_DOMAIN变量以运行payaradomain而不是domain1,例如:
docker run --env PAYARA_DOMAIN=payaradomain payara/server-full
上面的示例Dockerfile重新定义了这个变量,因此默认情况下使用payaradomain,而不需要在运行容器时指定它。
更改主密码的其他方法
您可以在不运行Payara Server的情况下运行docker镜像。相反,您可以先运行bash shell,在控制台中执行必要的命令,然后从shell运行服务器。
为此,您可以使用以下命令运行docker镜像:
docker run -t -i --entrypoint /bin/bash payara/server-full
这种方法的缺点是docker容器在前台运行,如果你重新启动它,那么payara服务器必须再次手动启动,所以它实际上仅用于测试目的。
答案 1 :(得分:2)
您收到payaradomain
正在运行的消息的原因是您已启动domain1
。 payaradomain
和domain1
使用相同的端口和检查以查看域是否正在运行,以查看是否正在使用给定域的管理端口。
要更改主密码,您必须让两个域都停止或更改payaradomain
的管理端口。
答案 2 :(得分:1)
与其在dockerfile中回显密码,不如在构建期间复制包含密码的文件并在构建完成后将其删除,这样更安全。