Artigo Diretório
Etapas de implantação
1.1, embalagem do projeto
Digite o projeto SpringBoot em um pacote jar.
1.2, faça upload para o servidor
Use a ferramenta de upload de arquivo para fazer upload do pacote jar para o servidor. A seguinte ferramenta de upload é WinSCP
Você pode escrever um Dockerfile no Windows e carregá-lo diretamente no servidor. Ele pode ser usado diretamente naquele momento.
1.3, a preparação do arquivo Dockerfile
# FROM表示使用的基础镜像为JDK8
FROM java:8
# 设置镜像时区
RUN echo "Asia/Shanghai" > /etc/timezone
# 添加当前路径下的blog-backend-1.0-SNAPSHOT.jar到镜像中,并改名为app.jar
ADD /blog-backend-1.0-SNAPSHOT.jar app.jar
# 镜像入口,镜像启动时运行
ENTRYPOINT ["java","-jar","/app.jar"]
# 暴露的端口
EXPOSE 8091
1.4, faça login no servidor
Use a ferramenta putty para fazer login no servidor.
Insira o caminho onde o Dockerfile e o pacote jar estão localizados
1.5, construa um espelho
Use docker build -d blog-backend .
imagem de construção.
docker build :Docker构建镜像命令
-d blog-backend :表示给镜像取名为blog-backend
. :表示在当前路径构建镜像
1.6, imagem de inicialização
Use a docker run -d --net host blog-backend
imagem de fundo para correr.
Você também pode usar a função para docker run -it --net host blog-backend
executar o espelho e os logs relacionados serão impressos.
docker run :容器启动命令。容器可以看做另一个电脑,虚拟机。
-d :后台运行
-i : 以交互模式运行
-t : 为容器再分配一个伪输入终端
-p : 可以指定要映射的IP和端口。比如-p 9000:8080,表示宿主机端口9000跟容器内端口8080映射。
--net host : 设置容器的网络直接与宿主机相连。比如需要连接mysql为localhost:3306,
项目暴露地址为8091。如果不使用--net host参数,容器会使用自己内部的网络,
连接容器自己的3306端口,暴露自己的8091端口。但是外网无法访问,因为外网
访问的是宿主机。所以可以使用-p参数端口映射,将容器的端口映射到宿主机,
但也无法连接上mysql,所以直接使用--net host,让容器使用宿主机的网络,就
可以直接连接宿主机的mysql,直接将容器项目的8091映射到宿主机。