dockerfile編寫Nacos鏡像

# Docker image for Anaconda3-2019.03
# VERSION 0.0.1
# Author: bolingcavalry

### 基礎鏡像,使用alpine操作系統,openjkd使用8u201
FROM openjdk:8u201-jdk-alpine3.9

#作者
MAINTAINER BolingCavalry <[email protected]>

#系統編碼
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8
#path
ENV PATH /opt/conda/bin:$PATH

#安裝必要的軟件
#RUN apt-get update --fix-missing && apt-get install -y wget
RUN apk update && apk add wget

#下載下來的壓縮文件名稱
ENV NACOS_FILE_NAME nacos-server-1.1.0.tar.gz

#把啓動時用到的文件準備好
COPY ./docker-entrypoint.sh /docker-entrypoint.sh

#解壓後的文件夾名稱
ENV NACOS_FOLDER_NAME nacos

RUN wget https://github.com/alibaba/nacos/releases/download/1.1.0/nacos-server-1.1.0.tar.gz -O ~/$NACOS_FILE_NAME && \
    tar -zxf ~/$NACOS_FILE_NAME -C ~/ && \
    rm ~/$NACOS_FILE_NAME && \
    chmod a+x /docker-entrypoint.sh

ENTRYPOINT ["/docker-entrypoint.sh"]

EXPOSE 8848

從Dockerfile內容中可見,先去nacos的github下載安裝包,然後解壓,再複製docker-enrypoint.sh到鏡像中,最後將nacos的8848端口暴露出來;
再來看看docker-enrypoint.sh文件的內容,該文件在容器啓動時會被執行,內容很簡單,就是進入nacos的bin目錄,執行啓動文件,再將start.out輸出到控制檯:

#!/bin/sh

echo "Starting nacos"n && \
     cd ~/nacos/bin && \
     ./startup.sh -m standalone && \
     cd ../logs && \
     tail -f start.out 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章