网站建设加排名要多少,西安网站建设云阔网络,wordpress基础教程,做网站那家比较好一.使用Docker部署的好处#xff1a;
在Linux系统上使用Docker部署项目通常会大大简化部署流程#xff0c;因为Docker可以将应用程序及其依赖打包到一个独立的容器中。
Docker打包应用程序时会将其与所有依赖项#xff08;操作系统、库等#xff09;一起打包。这样#…一.使用Docker部署的好处
在Linux系统上使用Docker部署项目通常会大大简化部署流程因为Docker可以将应用程序及其依赖打包到一个独立的容器中。
Docker打包应用程序时会将其与所有依赖项操作系统、库等一起打包。这样无论应用程序在开发、测试还是生产环境中运行都会有一致的运行环境。
由于容器与主机操作系统隔离Docker容器可以在任何支持Docker的平台上运行不论是本地开发环境、测试服务器还是云平台。
总而言之Docker通过容器化技术提供了一种简化的、一致性的部署方式解决了依赖冲突、环境差异、扩展性等传统部署方式中的痛点。这使得它在现代应用开发和部署中得到了广泛应用尤其是在云计算和微服务架构中发挥着关键作用。
二.Docker部署的步骤
1.准备工作
在部署前我们需要Dockerfile以及jar包MySQL放在Linux就需要再项目配置文件的数据库架构名改成虚拟机的IP以及密码需改成Linux内的mysql密码。
Dockerfile 是定义如何构建 Docker 镜像的蓝图而 Docker 是用于构建、运行和管理这些镜像及其容器的工具。
我们需要先创建Dockerfile就像需要一个网卡驱动程序来确保计算机能够与网络进行通信一样需要一个 Dockerfile 来定义如何构建我们的 Docker 镜像。Dockerfile 是 Docker 镜像的“驱动程序”。就像下面这样定义一个Dockerfile文件然后将这个和jar包拖动到Linux系统的 /root/ 目录下。
# 基础镜像
FROM openjdk:11.0-jre-buster
# 设定时区
ENV TZAsia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime echo $TZ /etc/timezone
# 拷贝jar包
COPY hm-service.jar /app.jar
# 入口
ENTRYPOINT [java, -jar, /app.jar]
2.构建镜像
就像将网卡插入计算机来实现网络连接一样你需要构建 Docker 镜像来创建运行你的应用程序的“容器”。
docker build -t my-java-app .-t my-java-app 是为镜像指定的名称.表示当前目录Dockerfile 在这里。
构建完镜像(image)后我们可以使用下面的命令查看镜像是否创建成功
docker image ls
//或
docker images
3.创建自定义网络 自定义网络使得容器可以更好地互相通信并提供额外的网络隔离和配置选项。
1创建自定义网络
docker network create --driver bridge my_custom_network这里的 --driver bridge 指定使用桥接网络驱动这是 Docker 的默认网络驱动。my_custom_network 是你自定义的网络名称可以根据需要更改。
2查看自定义网络
docker network ls3连接自定义网络
docker network connect my_custom_network mysql这里的 mysql 指一个正在运行的容器的名称或 ID。这个命令的作用是将现有的容器在这个例子中是 mysql 容器连接到一个自定义网络my_custom_network。
我们可以使用 docker ps 命令查看正在运行的容器。
4删除自定义网络
docker network rm my_custom_network4.创建并运行容器
网卡需要网络配置才能正确工作同样 Docker 容器也需要网络配置。我们可以通过 docker run 命令启动容器并指定如何将容器的端口映射到宿主机的端口。
docker run -d --name my-running-app --network hmall -p 8080:8080 my-java-app这里的 -d 参数表示在后台运行容器--network hmall是将容器连接到名为 hmall 的自定义网络(必须先创建才能使用自定义网络)-p 8080:8080 将容器的端口 8080 映射到宿主机的端口 8080--name my-running-app 给容器指定一个名称my-java-app 是你之前创建的镜像名称。
为了判断是否运行成功我们可以使用下面命令查看容器运行日志