1、拉取node鏡像,命令:docker pull node
(附docker常用命令:
查看鏡像列表:docker images
查看運行中的容器: docker ps
查看所有容器: docker ps -a
停止容器:docker stop cid(容器id或名稱)
重啓容器:docker restart cid(容器id或名稱)
啓動已停止的容器:docker start cid(容器id或名稱)
刪除容器(只能刪除已經停止的容器): docker rm cid(容器id或名稱)
刪除鏡像(若鏡像中有容器則必須先刪除容器): docker rmi imageid(鏡像id或名稱)
2、創建或選擇一個存放項目包的目錄
用rz命令將項目上傳到此目錄(使用的putty工具必須是支持上傳文件,如果命令使用不了則安裝,命令:yum -y install lrzsz),
附putty工具下載鏈接:https://pan.baidu.com/s/1tixc1Yh8GQ9JbgVWFXavug
提取碼:rxwm
3、cd進入存放項目目錄,下載一份linux版本python安裝包(nuxtjs環境),命令:
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
也可先下載好再上傳到服務器
4、在當前目錄創建Dockerfile文件,命令:touch Dockerfile
5、編輯Dockerfile文件,命令:vi Dockerfile
# 指定基礎鏡像
FROM node
# 維護者信息
MAINTAINER XXX
#安裝python
ADD Python-2.7.15.tgz /opt
#若報錯則
#RUN tar -zxvf Python-2.7.15.tgz -C /opt
#安裝python
RUN ./opt/Python-2.7.15/configure --prefix=/usr/local/python2.7 \
&& make && make install
# 複製本地文件到容器目錄中
COPY qrCodeMana-Web/ /qrCodeMana-Web
# 運行指令,賦予權限
RUN chmod 777 -R /qrCodeMana-Web
# 指定運行目錄
WORKDIR /qrCodeMana-Web
EXPOSE 8113
#設置淘寶npm鏡像
RUN npm config set registry https://registry.npm.taobao.org
#設置node-sass鏡像,否則可能下載失敗
RUN npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
#npm命令
RUN npm install
RUN npm run build
CMD ["npm", "start"]
6、編輯完成按esc,再按shift+:,輸入wq,回車保存退出
7、構建鏡像,命令:docker build -t qrcodeweb .
命令解釋: -t後的爲鏡像名,可自定義,最後有一點.,即當前目錄
8、啓動容器命令 docker run -d -p 8113:3000 --name qrcodeweb --link qrcode:web qrcodeweb
命令解釋:-d(後臺啓動) -p 主機端口:項目設置的端口 --name 容器別名 --link(如果前端後端項目都用的docker部署,則link命令作用爲連接兩個容器,冒號前爲後端容器名,冒號後爲別名)