1. 程式人生 > >Docker應用部署實錄(包含完善Docker安裝步驟)

Docker應用部署實錄(包含完善Docker安裝步驟)

Docker應用部署實錄(包含完善Docker安裝步驟)

前言

首先說一下這篇文章的來源。我之前接手的一個IOT專案,需要安裝多箇中控伺服器。中控伺服器需要安裝RabbitMQ,Mysql,多個服務,這些部署,部署人員不怎麼會(畢竟是硬體兼職的),只能讓我給整一個簡單一些方案。我當時就想到了容器化部署,然後整一個容器叢集(雖然我離開時還沒有整容器叢集)。

使用Docker部署的好處,就是大大降低部署複雜度。如RabbitMQ的原生部署,需要安裝erlang語言,再編譯,安裝,還容易出問題。docker只需要一條指令(甚至為了簡化操作,我將賬號密碼的初始化操作,也放在了這條指令中,並開啟了自啟動等)。

所以,通過Docker,實現了較為傻瓜式的部署,並且方案實現簡單,所以值得參考。尤其是一些中小型專案,有類似需求的小夥伴更值得推薦,尤其是命令中一些引數。

並且該篇部落格,給出了完善的Docker安裝步驟。

最後,就當是懷念一下當時剛剛接觸容器的我。嘿嘿。

一,安裝Docker:

1. 要求:CentOS7系統

2. 檢視系統核心:

uname -r

3. 利用root許可權,確保yum包更新到最新:

sudo yum update

4. [可選]解除安裝舊版本:

sudo yum remove docker docker-common docker-selinux docker-engine

5. 安裝需要的軟體包:

sudo yum install -y yum-utils device-mapper-persistent-data

6. 設定yum源:

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

7. 檢視所有倉庫所有docker版本,並選擇安裝:

yum list docker-ce --showduplicates | sort -r


8. 安裝Docker:

sudo yum install docker-ce


9. 啟動並加入開機啟動:

systemctl start docker

sudo systemctl enable docker

10. 驗證是否安裝成功:

docker version


二, 安裝RabbitMQ:

1. 安裝RabbitMQ(指令確保重啟自動啟動,修改預設使用者名稱與密碼):

docker run -d --hostname my-rabbit -d --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 -p 5672:5672 -p 15672:15672 rabbitmq:3.7-management

2. 驗證安裝成功:


三, 安裝Redis:

1. 安裝(指令確保重啟自動啟動,無需密碼,無需持久化):

docker run --name my-redis -d --restart=unless-stopped -p 6379:6379 -d redis:3.2 redis-server

2. 驗證安裝成功:


四, 安裝Mysql:

1. 安裝(指令確保重啟自動啟動,設定root密碼為123456,新建使用者renewable,密碼為123。提升容器內許可權):

docker run --name my-mysql -d --restart=unless-stopped --privileged=true -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_USER=”renewable” -e MYSQL_PASSWORD=”123” -d mysql:5.6

2. 安裝成功驗證:

伺服器校驗:

root使用者連線校驗:

自定義使用者連線校驗:

3. 提示:

上面連線不成功的問題也可以新增映象引數

--default-authentication-plugin=mysql_native_password

4. 注意:

建議原生安裝,如果採用容器部署,請嚴格遵守安裝過程。否則,異常修復會很麻煩。

五, 安裝JDK:

經過考慮,暫不考慮容器部署JDK。
之後服務容器化後,可以考慮容器部署JDK。

六, 容器部署外的安裝:

1. JDK安裝

2. Mysql資料結構匯入

3. (rabbitmq的路由等,由程式自動實現)

4. (redis的資料結構等,由程式自動實現)

5. Nginx部署:

(由於是centos7,故可以yum安裝)
(由於進行了repo處理,所以可以直接安裝nginx)
(否則,需要安裝nginx源)

yum install nginx


啟動及開啟自啟動:

systemctl start nginx
systemctl enable nginx

驗證:

Nginx的預設路徑:

  1. Nginx配置路徑:/etc/nginx/
  2. PID目錄:/var/run/nginx.pid
  3. 錯誤日誌:/var/log/nginx/error.log
  4. 訪問日誌:/var/log/nginx/access.log
  5. 預設站點目錄:/usr/share/nginx/html

七. 應用jar包部署:

這個部分是不可以公開的。各位小夥伴,根據自己的需要,進行處理吧。

如果有什麼疑問,可以私信或@我。

願與諸君共進步