【docker】部署

1、编写Dockerfile

#基础镜像使用java
FROM java:8
#维护者信息
MAINTAINER sm
#将容器挂载如下目录
VOLUME /tmp
#将jar包添加到容器中并更名为app.jar
ADD cloud-eureka-server7001-1.0-SNAPSHOT.jar app.jar
# 运行jar包
RUN bash -c 'touch /app.jar'
# 时区
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo 'Asia/Shanghai' >/etc/timezone \
#声明运行时容器提供服务端口,这只是一个声明,在运行时并不会因为这个声明应用就会开启这个端口的服务
EXPOSE 7001
#容器启动后需要执行的命令
ENTRYPOINT ["java","-Xmx1344M","-Xms1344M","-Xmn448M","-XX:MaxMetaspaceSize=192M","-XX:MetaspaceSize=192M","-Dspring.profiles.active=uat","-jar","/app.jar"]

2、编写脚本

#!/bin/bash
docker stop sm-provider-eureka1
docker rm sm-provider-eureka1
cd $PWD
docker build -t sm-provider-eureka1 .
docker run --name sm-provider-eureka1 -d -p 7001:7001  --privileged=true  -v /data/project/background/sm-provider-eureka1/logs:/logs sm-provider-eureka1
docker logs --tail 300 -f sm-provider-eureka1

3、打包

mvn clean package -pl cloud-provider-payment8001 -am

clean:都将清除上一次Maven执行的结果。这意味着他们将删除目标文件夹。

package:命令是编译代码,并将其打包。

install:install会编译和打包,同时也会把这个包放到你的本地仓库中。这将使其他项目可以引用它并从本地存储库中获取它。

-pl : 指定模块

-am: 是向下的。表示同时处理选定模块所依赖的模块。

4、问题

Q1:Docker之WARNING: IPv4 forwarding is disabled. Networking will not work.

vim /etc/sysctl.conf

#配置转发
net.ipv4.ip_forward=1

#重启服务,让配置生效
systemctl restart network

#查看是否成功,如果返回为“net.ipv4.ip_forward = 1”则表示成功

sysctl net.ipv4.ip_forward

Q2:注册中心错误 Request execution error. endpoint=DefaultEndpoint{serviceUrl='http://localhost:8761/eureka/}

如果配置文件使用了 - - - 多环境配置,记得改文件名为bootstrap.yml,而不是application.yml

bootstrap.yml 中配置的是应用启动时所必须的配置信息。
application.yml 中配置的是应用运行过程中所必须的配置信息。
bootstrap.yml 优先于 application.yml 进行加载。

 Q3:不能执行jar:“no main manifest attribute”  

修改pom.xml

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.3.3.RELEASE</version>
                <configuration>
                    <fork>true</fork> <!-- 如果没有该配置,devtools不会生效 -->
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

5、运行结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值