開始構建WOW服務端通用鏡像git
第二篇文章中準備工做環節已經從github拉取了mangosd源代碼,這裏咱們就能夠直接開始編寫dockerfile並進行編譯github
(1) 進入mangos/wow60/mangos-zero目錄docker
$: cd mangos/wow60/mangos-zero
$: touch Dockerfile
$: touch build.yml
(2) 編寫Dockerfileui
#基於上一環節構建的通用基礎鏡像 FROM base-env:latest #我的信息 MAINTAINER oliverCJ <cgjp123@163.com> #設置容器環境變量 ENV SRC_DIR /data/source ENV MANGOS_DIR /data/mangos ENV WOW_DATA_DIR /data/mangos/data ENV MANGOS_LOG_DIR /data/mangos/log #建立容器目錄用於存儲mangosd編譯後的內容 RUN mkdir -p ${SRC_DIR} \ && mkdir -p ${MANGOS_DIR} \ && mkdir -p ${WOW_DATA_DIR} \ && mkdir -p ${MANGOS_LOG_DIR} #把宿主機當前目錄的server文件夾複製到容器中對應目錄 COPY ./server ${SRC_DIR}/server #編譯Mangosd RUN cd ${SRC_DIR}/server/build \ && cmake ${SRC_DIR}/server -DCMAKE_INSTALL_PREFIX=${MANGOS_DIR} \ && make \ && make install \ && rm -rf ${SRC_DIR}/server #配置Mangosd RUN cd ${MANGOS_DIR}/etc \ && cp mangosd.conf.dist mangosd.conf \ && cp realmd.conf.dist realmd.conf #開放容器端口,用於服務 EXPOSE 22 3724 8085
(3) 編寫build.ymlspa
version: '2'
services:
mangosd-zero:
build: ./
image: mangosd-zero:latest
(4) 執行構建code
docker-compose -f build.yml build
(5) 構建完成server
構建完成後,鏡像名爲 mangosd-zero ,版本爲 latest blog
這裏咱們構建好了mangosd服務的通用鏡像,下一步,就能夠基於此鏡像構建世界服務端和驗證服務端dockerfile
下一節將開始構建驗證服務端it