docker stack 部署 mssql

===============================================html

 2019/12/8_第1次修改                       ccb_warlockmysql

 

===============================================sql

由於最近的工做項目使用的是mssql(自從知道mssql以後,我幾乎再也不提及另外一個累贅的名字:sql server),不得不去從新學習使用mssql。docker

個人理解是,使用mssql僅僅只是使用數據表時,用docker運行一個開發用的容器比起在一臺win server中安裝一個來的高效且省資源。ubuntu

固然若是還須要寫存儲過程及其調試,那仍是用ssms來開發和調試吧(過程比起oracle、mysql虐心太多)。瀏覽器

由於我自學過docker、又喜歡折騰這種能夠省時間的技術,因此整理了這篇筆記給路人蔘考。oracle

 


1、前提條件

 


2、部署MSSQL

因爲項目須要,我部署的是mssql 2017。學習

2.1 建立目錄映射

mkdir -p /usr/docker-vol/mssql

 

2.2 配置mssql-stack.yml

 # 編輯mssql-stack.ymlspa

mkdir -p /opt/compose
vi /opt/compose/mssql-stack.yml

 

 # 添加下面的內容到mssql-stack.yml文件內,wq保存。調試

version: "3.6" services: mssql: image: mcr.microsoft.com/mssql/server:2017-latest-ubuntu environment: - TZ=Asia/Shanghai - ACCEPT_EULA=Y # 贊成條款
      - SA_PASSWORD=Abc111111 # sa帳號的密碼
 volumes: - /usr/docker-vol/mssql:/var/opt/mssql deploy: replicas: 1 restart_policy: condition: any resources: limits: cpus: "1" memory: 2G # mssql至少要2G內存,不要限制的過小了
 update_config: parallelism: 1 # 每次更新1個副本
        delay: 5s # 每次更新間隔 
        monitor: 10s # 單次更新多長時間後沒有結束則斷定更新失敗
        max_failure_ratio: 0.1 # 更新時能容忍的最大失敗率
        order: start-first # 更新順序爲新任務啓動優先
 ports: - 1433:1433 networks: - swarm-net networks: swarm-net: external: true

 

2.3 建立服務

1)命令方式

cd /opt/compose docker stack deploy -c mssql-stack.yml mssql-stack

 

2)portainer界面方式(推薦)

 登陸portainer(若是是根據上面的教程部署的portainer,瀏覽器訪問http://宿主機IP:9000,在stack中增長mssql-stack.yml文件中的內容)

相關文章
相關標籤/搜索