使用Docker部署项目

2025-07-15

首先,需要在 Linux 服务器上安装 Docker。以下是安装步骤:

卸载旧版本(如果有):

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine

安装依赖环境:

yum -y install yum-utils device-mapper-persistent-data lvm2

设置 Docker 镜像源:

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装 Docker:

yum install docker-ce docker-ce-cli containerd.io

启动 Docker 并设置开机自启动:

systemctl start docker
systemctl enable docker

部署项目

  1. 创建 Dockerfile

Dockerfile 是一个用来构建镜像的文本文件,包含了构建镜像所需的指令和说明。以下是一个简单的 Dockerfile 示例:

FROM openjdk:8-jre
ENV HOME /home
RUN mkdir $HOME
COPY ./myapp.jar $HOME/myapp.jar
WORKDIR $HOME
ENTRYPOINT ["java", "-jar", "myapp.jar"]
  1. 构建镜像

将 Dockerfile 和项目的 jar 包放在同一个目录下,然后在该目录下执行以下命令构建镜像:

docker build -t myapp:1.0
  1. 运行容器

使用构建好的镜像运行容器:

docker run -d -p 8080:8080 --name myapp-container myapp:1.0
  1. 查看容器日志

可以通过以下命令查看容器的运行日志:

docker logs -f myapp-container

使用 Docker Compose 自动化部署

Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。以下是使用 Docker Compose 部署项目的步骤:

创建 docker-compose.yml 文件:

version: '3.8'
services:
myapp:
build:
context:
dockerfile: Dockerfile
ports:
- "8080:8080"
networks:
- mynetwork

networks:
mynetwork:
driver: bridge

运行 Docker Compose:

在 docker-compose.yml 文件所在的目录下执行以下命令:

docker-compose up -d