Docker的打包,分发,部署

打包:

1、安装Docker:首先,在Linux主机上安装Docker。可以通过官方网站提供的安装脚本或包管理器来安装Docker。

2、创建Dockerfile:在应用程序的根目录下创建一个名为Dockerfile的文件。Dockerfile是一个文本文件,用于定义如何构建Docker镜像。可以在Dockerfile中指定应用程序的运行环境、依赖项和启动命令等信息。

3、构建Docker镜像:使用Docker命令来构建Docker镜像。在终端中,切换到包含Dockerfile的目录,并运行以下命令:

docker build -t <image_name> .

其中,<image_name>是要创建的Docker镜像的名称。这个命令会根据Dockerfile中的定义,自动构建镜像。

4、运行Docker容器:使用Docker命令来运行Docker容器。在终端中,运行以下命令:

docker run -d -p <host_port>:<container_port> --name <container_name> <image_name>

其中,<host_port>是主机上要映射的端口号,<container_port>是容器内部的端口号,<container_name>是要给容器起的名称,<image_name>是之前构建的Docker镜像的名称。

分发:

5、分发Docker镜像和容器:当Docker镜像和容器运行正常时,可以将它们分发给其他机器。如果是在一个私有网络中,可以将镜像推送到私有Docker仓库,并在其他机器上拉取镜像进行部署和运行。如果是在公共云平台上,可以将镜像上传到云平台提供的容器注册表,以供其他用户使用。

部署:

6.一键部署脚本

version: "3"
services:
  ts-nginx:
    image: 192.168.0.54/ts-common-lib/ts-nginx:1.10.1
    ports:
      - 80:80
      - 443:443
    privileged: true #修改容器权限,给容器加特权
    volumes:
      - /data/nginx/html:/usr/local/nginx/html:rw
      - /data/nginx/conf/nginx.conf:/usr/local/nginx/conf/nginx.conf
      - /data/nginx/logs:/usr/local/nginx/logs:rw
      - /data/nginx/cert:/usr/local/nginx/cert:rw
    command: /bin/bash -c "exec nginx -g 'daemon off;'"

  ts-center:
    image: 192.168.0.54/hb-trade-center/ts-center:0.0.2
    ports:
      - "1002:1002"
    hostname: ts-center
    restart: always

  ts-config:
    image: 192.168.0.54/hb-trade-center/ts-config:0.0.1
    ports:
      - "2002:2002"
    hostname: ts-config
    environment:
      - "eureka_client_serviceUrl_defaultZone=http://tsingsoft:Tsingsoft2018@192.168.0.55:1002/eureka"
    restart: always
    depends_on:
      - ts-center

  ts-gateway:
    image: 192.168.0.54/hb-trade-center/ts-gateway:0.0.2
    ports:
      - "3002:3002"
    hostname: ts-gateway
    restart: always
    depends_on:
      - ts-center
      - ts-config
    environment:
      - "spring_profiles_active=hb-test"
      - "eureka_client_serviceUrl_defaultZone=http://tsingsoft:Tsingsoft2018@192.168.0.55:1002/eureka"

  ts-biz-support:
    image: 192.168.0.54/hb-trade-center/ts-biz-support:0.0.2
    ports:
      - "6002:6002"
    hostname: ts-biz-support
    restart: always
    depends_on:
      - ts-center
      - ts-config
    environment:
      - "spring_profiles_active=hb-test"
      - "eureka_client_serviceUrl_defaultZone=http://tsingsoft:Tsingsoft2018@192.168.0.55:1002/eureka"

  ts-auth:
    image: 192.168.0.54/hb-trade-center/ts-auth:0.0.1
    ports:
      - "4002:4002"
    hostname: ts-auth
    restart: always
    depends_on:
      - ts-center
      - ts-config
    environment:
      - "spring_profiles_active=hb-test"
      - "eureka_client_serviceUrl_defaultZone=http://tsingsoft:Tsingsoft2018@192.168.0.55:1002/eureka"

  ts-bi:
    image: 192.168.0.54/hb-trade-center/ts-bi:0.0.1
    ports:
      - "5002:5002"
    hostname: ts-bi
    restart: always
    depends_on:
      - ts-center
      - ts-config
    environment:
      - "spring_profiles_active=hb-test"
      - "eureka_client_serviceUrl_defaultZone=http://tsingsoft:Tsingsoft2018@192.168.0.55:1002/eureka"
posted @ 2024-03-03 14:07  Mr.peter  阅读(14)  评论(0编辑  收藏  举报