1. Dockerfile
FROM ubuntu RUN mkdir opt/fsd RUN apt-get update RUN apt install vim --assume-yes ADD jdk-8u231-linux-x64.tar.gz opt/fsd ENV JAVA_HOME=/opt/fsd/jdk1.8.0_231 ENV PATH=$JAVA_HOME/bin:$PATH ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar COPY sfgeurekasvr-0.0.1-SNAPSHOT.jar /opt/fsd EXPOSE 7761 ENTRYPOINT java -jar /opt/fsd/sfgeurekasvr-0.0.1-SNAPSHOT.jar --eureka.instance.hostname=${EUREKAHOST} |
2. docker build -t bb .
3. docker run -p 7761:7761 -e "EUREKAHOST=192.168.3.68" -it bb /bin/bash
4. codes for test
@EnableEurekaServer @Value("${eureka.instance.hostname}") @Value("$server.port") public static void main(String[] args) { @RequestMapping(value = { "/ip" }, method = RequestMethod.GET) |
附:也可以在build階段指定參數
docker build --build-arg EUREKAHOST=192.168.3.68 -t aa .
FROM ubuntu RUN mkdir opt/fsd ARG EUREKAHOST RUN echo "Oh dang look at that ${EUREKAHOST}" |