配置docker並部署一個node.js可運行的環境

概述

本文主要描述在linux中如何建立並使用docker在容器中建立一個node.js可運行的環境node

  • node.js
  • pm2
  • ansible
  • docker

安裝docker

這裏我使用的系統是Fedora 28linux

dnf install docker # 安裝docker
# 配置文件 /etc/sysconfig/docker

chkconfig docker on  # 加入開機啓動
service docker start # 啓動docker服務

建立docker啓動並附着上去

# 使用鏡像建立容器
docker run -i -t centos:7 /bin/bash # 建立一個容器,讓其中運行 bash 應用,退出後容器關閉
  • 若是以前建立過的容器想重新啓動並附着上去
docker ps #查看當前啓動的容器CONTAINER ID 假如的是:d12c34b4bb77

#附着上去
docker attach d12c #這裏能夠寫ID也能夠寫name id只寫四位也是能夠的
#這時候輸入密碼就能夠進去了

安裝必要的軟件

  • 安裝 openssh-server
yum install openssh-server
#安裝完畢以後還須要配置公鑰
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key
#配置完成以後,啓動sshd
/usr/sbin/sshd
#能夠查詢一下後臺是否已經啓動
ps -aux
#啓動成功後,這時候你就能夠在物理機上進行訪問他了 例如: ssh root@172.17.0.2 輸入密碼就能夠訪問了
  • 修改root密碼
passwd #這裏輸入新密碼兩次就更改爲功了
  • 安裝vim
yum install vim #安裝完成以後,若是出現中文亂碼
vim /etc/vimrc  #在文件中加一行 set encoding=utf-8 保存便可
  • 安裝node.js
#官網下載 或者使用docker cp命令拷貝過來
docker cp <路徑 or 文件> <容器ID or name>:<路徑>
docker cp <容器ID or name>:<路徑 or 文件> <路徑>
#下載好文件以後
tar zxvf <文件名> #進行解壓
#這裏須要在設置一下軟鏈接通常我都設置在 /usr/local/bin/ 中
#我這裏寫的 /data/node/bin/ 是我node.js的安裝目錄 你使用的時候換成你的目錄就能夠了
ln -s /data/node/bin/* /usr/local/bin/ #*是表示把bin中的因此都創建軟鏈接
#假如你當前就在 /usr/local/bin/ 這個目錄下 你能夠這麼寫
ln -s /data/node/bin/* . #這個.則表示,把軟鏈接地址創建在當前目錄下
  • 下載pm2
#通常狀況下咱們使用國外的鏡像地址下載
npm install -g pm2 # 可是下載速度感人,我推薦使用國內taobao鏡像
#臨時使用taobao鏡像地址進行下載pm2  
npm --registry https://registry.npm.taobao.org install -g pm2
#這裏加上-g是進行的全局安裝,安裝結束後也須要進行創建軟鏈接跟 上文同樣便可命令稍微有一點區別
ln -s /data/node/bin/pm2* . #這裏多了一個pm2* 則表示pm2爲開頭的應用程序都創建鏈接
  • 最後一步 建立authorized_keys讓物理機能夠經過ansible免密訪問
#生成系統公鑰私鑰
ssh-keygen -t rsa
#建立authorized_keys文件 目錄在 /root/.ssh/
cd
cd .ssh/
touch authorized_keys
#而後複製物理機中的公鑰 黏貼到authorized_keys文件中 保存便可無祕訪問了

這些都是本身在適用docker碰到的,記錄下來,之後在用到的時候,能夠複習,避免再次踩坑docker

相關文章
相關標籤/搜索