【搭网站】使用docker部署在Linux服务器上

docker简介

常用docker命令小结

这里是后面可能用到的一些命令,后面还会提到

进入容器:

docker exec -i -t  fee2bbb7c9ee /bin/bash

查看进程:

docker ps 

查看日志:

docker logs -f [container-id]

杀死容器:

docker kill

查看构建好的镜像

sudo docker images

强制删除镜像:

docker rmi -f

1. 构建后端镜像

首先服务器要有安装docker,具体安装方法自行百度,或者宝塔安装更方便

在后端项目创建Dockerfile

Dockerfile 用于指定构建 Docker 镜像的方法

Dockerfile 一般情况下不需要完全从 0 自己写,建议去 github、gitee 等托管平台参考同类项目(比如 springboot)

Dockerfile 编写:

  • FROM 依赖的基础镜像
  • WORKDIR 工作目录
  • COPY 从本机复制文件
  • RUN 执行命令
  • CMD / ENTRYPOINT(附加额外参数)指定运行容器时默认执行的命令
FROM maven:3.5-jdk-8-alpine as builder

# Copy local code to the container image.
WORKDIR /app
COPY pom.xml .
COPY src ./src

# Build a release artifact.
RUN mvn package -DskipTests

# Run the web service on container startup.
CMD ["java","-jar","/app/target/user-center-backend-0.0.1-SNAPSHOT.jar","--spring.profiles.active=prod"]
                              

在项目根目录当中新建Dockerfile文件,把上述代码复制进去

在这里插入图片描述
然后把项目文件用git clone到服务器的文件夹下(比如用了宝塔的就是/www/wwwroot)

运行命令:(后面-t是给镜像打标签,具体docker命令参考docker 菜鸟教程

//后端(没权限用sudo)
user-center-backend>> sudo docker build -t user-center-backend:v0.0.1 .

后端镜像构建成功

2.构建前端镜像

一个供参考的前端Dockerfile配置

可能的踩坑点:注意下面需要有dist文件夹和docker文件夹,这两个必须得先有(于是我们待会直接把构建好的dist文件夹放上去再交给docker构建),但好像有方法不用实现构建出dist,由于博主不了解Docker构建过程,所以这里留个坑。

FROM nginx

WORKDIR /usr/share/nginx/html/
USER root

COPY ./docker/nginx.conf /etc/nginx/conf.d/default.conf

COPY ./dist  /usr/share/nginx/html/

EXPOSE 80

CMD ["nginx", "-g", "daemon off;"]

在前端项目新建Dockerfile文件,复制粘贴上述内容

nginx.conf参考配置:

server {
   
    listen 80;

    # gzip config
    gzip on;
    gzip_min_length 1k;
    gzip_comp_level 9;
    gzip_types text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml;
    gzip_vary on;
    gzip_disable 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值