亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Docker-Compose一鍵部署java微服務

發布時間:2021-09-18 13:51:09 來源:億速云 閱讀:672 作者:柒染 欄目:編程語言

這篇文章將為大家詳細講解有關如何使用Docker-Compose一鍵部署java微服務,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

Docker Compose 來輕松高效的管理容器,定義運行多個容器

官方介紹

定義、運行多個容器。 YAML file 配置文件。 single command。 命令有哪些? Compose is a tool for defining and running multi-container Docker applications. With Compose, you use a YAML file to configure your application’s services. Then, with a single command, you create and start all the services from your configuration. To learn more about all the features of Compose, see the list of features. 所有的環境都可以使用 Compose。 Compose works in all environments: production, staging, development, testing, as well as CI workflows. You can learn more about each case in Common Use Cases. 三步驟: Using Compose is basically a three-step process:

  1. Define your app’s environment with a Dockerfile so it can be reproduced anywhere.

  • Dockerfile 保證我們的項目在任何地方可以運行。

  1. Define the services that make up your app in docker-compose.yml so they can be run together in an isolated environment.

  • services 什么是服務。

  • docker-compose.yml 這個文件怎么寫!

  1. Run docker-compose up and Compose starts and runs your entire app.

  • 啟動項目

作用:批量容器編排。

理解

Compose 是Docker官方的開源項目。需要安裝! Dockerfile 讓程序在任何地方運行。 web服務。 redismysql、nginx ... 多個容器。 run Compose

version: "3.9"  # optional since v1.27.0
services:
  web:
    build: .
    ports:
      - "5000:5000"
    volumes:
      - .:/code
      - logvolume01:/var/log
    links:
      - redis
  redis:
    image: redis
volumes:
  logvolume01: {}

docker-compose up 100 個服務。 Compose :重要的概念。 服務services, 容器。應用。(web、redis、mysql....) 項目project。 一組關聯的容器。 博客。web、mysql。

下載并安裝Docker-Compose

下載Docker-Compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.28.6/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 這個可能快點!
curl -L https://get.daocloud.io/docker/compose/releases/download/1.28.6/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

設置權限

sudo chmod +x /usr/local/bin/docker-compose

測試,在任意目錄下輸入docker-compose

如何使用Docker-Compose一鍵部署java微服務

官方體驗

python 應用。計數器。 redis!

官網地址:https://docs.docker.com/compose/gettingstarted/

前提需要安裝最新版的docker-compose,否則會報版本不兼容

1、應用 app.py 2、Dockerfile 應用打包為鏡像 3、Docker-compose yaml文件 (定義整個服務,需要的環境。 web、redis) 完整的上線服務! 4、啟動 compose 項目(docker-compose up)

流程

1、創建網絡 2、執行 Docker-compose yaml 3、啟動服務。

官網流程

  • 創建文件夾

     mkdir composetest
     cd composetest


  • 創建app.py

    import time
    
    import redis
    from flask import Flask
    
    app = Flask(__name__)
    cache = redis.Redis(host='redis', port=6379)
    
    def get_hit_count():
        retries = 5
        while True:
            try:
                return cache.incr('hits')
            except redis.exceptions.ConnectionError as exc:
                if retries == 0:
                    raise exc
                retries -= 1
                time.sleep(0.5)
    
    @app.route('/')
    def hello():
        count = get_hit_count()
        return 'Hello World! I have been seen {} times.\n'.format(count)


  • 創建 requirements.txt

    flask
    redis


  • 創建 Dockerfile

    FROM python:3.7-alpine
    WORKDIR /code
    ENV FLASK_APP=app.py
    ENV FLASK_RUN_HOST=0.0.0.0
    RUN apk add --no-cache gcc musl-dev linux-headers
    COPY requirements.txt requirements.txt
    RUN pip install -r requirements.txt
    EXPOSE 5000
    COPY . .
    CMD ["flask", "run"]


  • 創建 docker-compose.yml

    version: "3.9"
    services:
      web:
        build: .
        ports:
          - "5000:5000"
      redis:
        image: "redis:alpine"


  • 運行 docker-compose up

    成功截圖:

如何使用Docker-Compose一鍵部署java微服務

Java微服務項目實戰計數器使用DockerCompose部署
  • 新建項目,完成計數功能

    package com.atxiaodei.hellodockercompose.controller;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.data.redis.core.StringRedisTemplate;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    /**
     * @ClassName HelloController
     * @Deacription TODO
     * @Author 王盟
     * @Date 2021/4/6 18:58
     * @Version 1.0
     **/
    @RestController
    public class HelloController {
    
        @Autowired
        StringRedisTemplate redisTemplate;
    
        @RequestMapping("/hello")
        public String helloCount(){
            Long view = redisTemplate.opsForValue().increment("view");
    
            return  "使用dockercompose部署java微服務計數器功能,view"+view;
        }
    }


  • 編寫Dockerfile

    FROM java:8
    
    COPY *.jar /app.jar
    
    CMD ["--server.port=8080"]
    
    EXPOSE 8080
    
    ENTRYPOINT ["java","-jar","/app.jar"]


  • 編寫docker-compose.yml

    version: '3.9'
    
    services:
      wangmengapp:
        build: .
        image: wangmengapp
        depends_on:
          - redis
        ports:
        - "8080:8080"
      redis:
        image: "redis:alpine"


  • 上傳文件到服務器

  • 執行 docker-compose up

    成功截圖

如何使用Docker-Compose一鍵部署java微服務

總結:

  • 未來項目只要有 docker-compose 文件。 按照這個規則,啟動編排容器。!

  • 公司: docker-compose。 直接啟動。

  • 網上開源項目: docker-compose 一鍵搞定。

  • 假設項目要重新部署打包 docker-compose up --build # 重新構建!

關于如何使用Docker-Compose一鍵部署java微服務就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

贵港市| 兴宁市| 宁国市| 淮滨县| 衡山县| 光泽县| 邯郸县| 勐海县| 黑龙江省| 商南县| 淮北市| 永靖县| 辽源市| 大新县| 筠连县| 正宁县| 伊吾县| 镇沅| 万荣县| 鄂尔多斯市| 象山县| 平阴县| 六枝特区| 孟州市| 峨眉山市| 钦州市| 瑞昌市| 武乡县| 抚顺县| 九台市| 游戏| 海口市| 会理县| 喜德县| 新邵县| 遵化市| 彭山县| 三门县| 拜城县| 茂名市| 常山县|