Tag: 链接器

Tomcat的Spring应用程序属性与docker容器链接

我一直在玩docker。 我有我的MySQL容器 docker run –name mymysql -d mysql / mysql-server:5.6 我的应用程序部署在我的Tomcat容器 docker运行 – 链接mymysql:mysql -d我的tomcat 在tomcat容器中,我可以看到(因为链接) .. MYTOMCAT_PORT_8080_TCP_ADDR=172.17.0.55 .. and in the /etc/hosts 172.17.0.55 mysql 在我的Spring应用程序中,我用这种方式pipe理属性 class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:${env}/myapp.properties</value> </list> </property> </bean> 其中取决于configuration(propvariables在tomcat的JAVA_OPTS中设置-Denv = qa) 在qa / myapp.properties我有例如mysql链接 databaseUrl=jdbc:mysql://mysql:3306/mydb “mysql”是mysql docker镜像的名称,和tomcat容器的/ etc / hosts中的一样 我想知道如果我处理的东西的方式被认为是良好的做法? 有一个更容易/更聪明的方式来处理属性? 事实上,我的Java应用程序与我的docker的图像的名称强烈联系在一起。 我想有一种运行在tomcat容器上的脚本,它使用/ etc / hosts值的ENVvariables(MYTOMCAT_PORT_8080_TCP_ADDR)即时生成最终的may.properties。 这是一个更好的解决scheme吗?

Docker + Yesod链接失败

我正在尝试创build一个Docker化的Yesod应用程序,并且已经初始化了目录./my-app下的Yesod项目。 我的Dockerfile如下所示: FROM haskell:7.8 RUN apt-get update && apt-get install -y libpq5 libpq-dev RUN cabal update ADD my-app /opt/my-app WORKDIR /opt/my-app RUN cabal sandbox delete RUN cabal sandbox init RUN cabal install -j –only-dependencies RUN cabal build RUN dist/build/db-import/db-import EXPOSE 3000 CMD ["dist/build/my-app/my-app", "production", "-p", "3000"] 当我真的去运行docker,它能够build立所有的依赖关系,但我得到一个链接器错误: /opt/my-app/.cabal-sandbox/lib/x86_64-linux-ghc-7.8.4/cryptonite-0.3/libHScryptonite-0.3.a(generic.o):(.data+0x0): multiple definition of `gmtab' /opt/my-app/.cabal-sandbox/lib/x86_64-linux-ghc-7.8.4/cipher-aes-0.2.10/libHScipher-aes-0.2.10.a(aes_generic.o):(.data+0x0): first defined […]

docker连接的集装箱所有港口closures

我尝试从一个docker集装箱连接到另一个。 容器A安装并启动了Derby DB,在端口3301上侦听 集装箱B应连接到集装箱A docker文件看起来像:容器A. FROM java:8 # Install Derby COPY db-derby-10.12.1.1-bin.tar.gz db-derby-10.12.1.1-bin.tar.gz RUN mkdir /opt/Apache RUN cp db-derby-10.12.1.1-bin.tar.gz /opt/Apache RUN tar xzvf /opt/Apache/db-derby-10.12.1.1-bin.tar.gz EXPOSE 3301 CMD ["/db-derby-10.12.1.1-bin/bin/startNetworkServer", "-p 3301"] 容器B FROM java:8 # Install nmap RUN apt-get update RUN apt-get install -y nmap COPY db-derby-10.12.1.1-bin.tar.gz db-derby-10.12.1.1-bin.tar.gz RUN mkdir /opt/Apache RUN cp db-derby-10.12.1.1-bin.tar.gz /opt/Apache RUN […]