Glassfish Docker EAR部署失败的身份validation

在最新的glassfish docker镜像上 ,我试图部署一个EAR。

这里是Dockerfile:

FROM glassfish/nightly COPY start.sh / COPY gf-j2ee8-poc.ear / COPY glassfish-password.txt / EXPOSE 8080 EXPOSE 4848 ENTRYPOINT ["/start.sh"] 

在我的start.sh中,我有以下几点:

/ glassfish4 / bin / asadmin –interactive = false –user admin –passwordfile /glassfish-password.txt deploy /gf-j2ee8-poc.ear

使用下面的glassfish-password.txt

 AS_ADMIN_PASSWORD= AS_ADMIN_ADMINPASSWORD= AS_ADMIN_USERPASSWORD= AS_ADMIN_MASTERPASSWORD= 

我试过这些值未设置,设置为admiadmin和pipe理员。 没有任何工作

我也试过这个:

/ glassfish4 / bin / asadmin –interactive = false -u admin deploy /gf-j2ee8-poc.ear

运行Docker镜像时,我总是得到以下错误。

 Authentication failed for user: admin with password from password file: /glassfish-password.txt (Usually, this means invalid user name and/or password) Command deploy failed. 

任何人都知道如何做这个工作?

答案是在您链接到的博客文章中:

并通过http:// localhost:4848访问控制台。 默认的pipe理员用户名和密码是:user = admin / password = glassfish。

你将需要设置AS_ADMIN_PASSWORD=glassfish 。 你的密码文件中不需要任何东西。

您必须更改pipe理员密码。 这是工作脚本。 它更改密码并启用pipe理面板。 另外,可能你的AS_ADMIN_PASSWORD不正确。

 echo "AS_ADMIN_PASSWORD=" > /tmp/glassfishpwd && \ echo "AS_ADMIN_NEWPASSWORD=$GLASSFISH_ADMIN_PASSWORD" >> /tmp/glassfishpwd && \ asadmin --user=admin --passwordfile=/tmp/glassfishpwd change-admin-password --domain_name domain1 && \ asadmin start-domain && \ echo "AS_ADMIN_PASSWORD=$GLASSFISH_ADMIN_PASSWORD" > /tmp/glassfishpwd && \ asadmin --user=admin --passwordfile=/tmp/glassfishpwd enable-secure-admin && \ /glassfish-4.1/bin/asadmin --user=admin stop-domain && \ rm /tmp/glassfishpwd