一、环境
操作系统:windows10
虚拟机:ubuntu_18.04
二、Docker安装
三、搭建Eureka-Server
- Idea直接创建
- properties配置
server.port = 8001
spring.application.name=xxxx
eureka.server.enable-self-preservation=true
eureka.server.eviction-interval-timer-in-ms=5000
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
spring.security.user.name=xxxx
spring.security.user.password=xxxx
- 配置类
启动类记得加上
@EnableEurekaServer
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.csrf().disable().authorizeRequests().antMatchers("/eureka/**").permitAll()
.antMatchers("/static/**").permitAll();
super.configure(http);
}
}
- Tips
可在resources/static下添加自定义标签页图标
文件名为favicon.ico
- 检查服务
- 可能问题
服务启动但无法访问
服务启动失败
以上问题请检查springboot与springcloud版本, 可能需要添加hystrix支持
- 服务打包
四、Docker部署
- 编写Dockerfile
在根目录创建文件,推荐文件名Dockerfile
FROM java:8
VOLUME /tmp
ADD 打包好的jar包全名 app.jar #app.jar可更改
EXPOSE 8001
ENTRYPOINT ["java","-jar","/app.jar"]
- 复制jar包和Dockerfile到服务器
- 制作镜像
进入jar包和Dockerfile的目录, 制作镜像. 最后那个'.' 代表Dockerfile在当前路径
sudo docker build -t eureka-server .
- 启动容器
sudo docker run -d -p 8001:8001 --name eureka-server eureka-server
- 查看容器状态
sudo docker ps -a
五、检查结果
输入服务器ip:8001
六、可视化管理
portainer服务, 官网介绍
sudo docker volume create portainer_data
sudo docker run -d -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
启动后输入 服务器ip:9000, 可进入初始化配置界面, 配置账密信息,选择connect Docker。
效果如下, 可用于container管理
- 查看container的log
- 内存cpu网络资源占用情况
- 进入container等