Docker

在 Docker 中部署 Jira 和 Confluence 並連接到 Amazon RDS

May 27, 2020
Docker, Jira, RDS, 運維開發

在 Docker 中部署 Jira 和 Confluence 並連接到 Amazon RDS # 採用 Docker 部署 Jira,使用 Nginx 作爲反響代理,數據庫使用 Amazon RDS(MySQL 5.7) Jira Application # 創建個目錄,內部放置一個 docker-compose.yml 文件,內容如下: version: '3.3' services: jira-software: image: atlassian/jira-software volumes: - ./jira\_data:/var/atlassian/application-data/jira - ./jira\_lib/mysql-connector-java-5.1.49-bin.jar:/opt/atlassian/jira/lib/mysql-connector-java-5.1.49-bin.jar - ./jira\_lib/mysql-connector-java-5.1.49.jar:/opt/atlassian/jira/lib/mysql-connector-java-5.1.49.jar - ./jira\_lib/server.xml:/opt/atlassian/jira/conf/server.xml:ro # 這裏一定要只讀掛載,不然 Jira 重啓後會用默認值去覆蓋,然後用反向代理的時候會出現問題 ports: - '8080:8080' 在同目錄中創建 jira_lib 目錄,內部放上 mysql-connector-java-5.1.49-bin.jar , mysql-connector-java-5.1.49.jar 和 server.xml,其中前兩者可以在 https://lb.knat.network/mysql-connector-java-5.1.49.zip 下得到,後者內容如下(只修改了 Connector 部分,着重關注一下這個,如果懷疑版本不對的話,建議手動進入 Docker 容器內把 /opt/atlassian/jira/conf/server.xml 文件複製出來進行修改): <?xml version="1.0" encoding="utf-8"?> <Server port="8005" shutdown="SHUTDOWN"> <Listener className="org. ...

Docker Compose 小記

March 9, 2019
Docker, 運維開發

Docker Compose 小記 # 第一次接觸 Docker 就是從寫 docker-compose開始的,因爲嫌每次開啓動手動 docker run xxx 太麻煩,所以就希望有一個一次 Write Once ,Crash Everywhere 的方法可以實現,所幸看到了 Compose ,就一直這麼用着了。 對於相關的程序的話,由於有了太多的手動維護服務器(然後各種刪庫跑路)的經驗,我對於一個正在運行的的 Web App 而言,希望的部署方式有如下: 直接部署在服務器上(類似部署 Wordpress 時手動安裝 Wordpress, PHP-FPM, MySQL 和 nginx),這樣的後果就是維護(尤其是遷移)起來非常費力,安裝起來非常費力,似乎唯一的好處(可能也是錯覺)就是在程序爆炸的時候似乎可以對於程序有一些更加多一點的控制。 Docker 部署,然後暴露一個端口,前端由 nginx 來做反向代理,這樣的好處就是 Write Once,docker-compose up -d&& Crash Everywhere,對於遷移起來也非常方便,直接整個文件夾壓縮後 rsync 出去就好了。 出於上面的第二個需求,我寫的 Compose 文件中所有的持久化內容(數據庫,文件)都是放在同一個文件夾中的,以本博客正在使用的 Docker 的 docker-compose.yml爲例: version: '3.1' services: wordpress: image: wordpress restart: always volumes: - ./wordpress:/var/www/html ports: - 2400:80 environment: WORDPRESS\_DB\_HOST: db WORDPRESS\_DB\_USER: exampleuser WORDPRESS\_DB\_PASSWORD: examplepass WORDPRESS\_DB\_NAME: exampledb db: image: mysql:5. ...