2024年1月2日 星期二
TurnKey GNU/Linux 安裝 docker & dockge
Jellyfin的docker安裝
2023年12月31日 星期日
OMV6的docker安裝順序
OMV6 系統下的 Docker安裝順序
首先,更新系統完成後安裝 omv-extras。
然後在插件安裝 compose。
其次掛載儲存區、建立使用者。
建立Docker安裝相關資料夾,分別是:docker安裝資料夾、compose文件存放資料夾、容器資料存放資料夾。
在web左側,omv-extras頁,將Docker repo 打勾並儲存。
在web左側,服務-> Compose->設定
依序填入指定資料夾後按儲存即完成安裝docker
2023年12月10日 星期日
安裝dockge (dock管理工具)
Dockge
基於docker compose.yaml建立容器,易使用的管理器。
前置條件
基本安裝
# 建立儲存你的stacks yaml和 Dockge stacks yaml的存放
mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge
# 下載 compose.yaml
curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml --output compose.yaml
# 啟用 docker
docker compose up -d
更新dockge
cd /opt/dockge
docker compose pull && docker compose up -d
自定義安裝
參考來源
https://github.com/louislam/dockge2023年10月3日 星期二
Docker 開啟 port 2375 允許遠端訪問
開啟 /usr/lib/systemd/system/docker.service 檔案。
加入下方內容
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
加入位置如下圖
存檔退出後,重新加載服務並重啟Docker。
systemctl daemon-reload
service docker restart
參考資料
http://124.71.73.155/?p=79
https://netkiller.sourceforge.net/virtualization/docker/docker.config.html
https://gist.github.com/styblope/dc55e0ad2a9848f2cc3307d4819d819f?permalink_comment_id=3989337#gistcomment-3989337
2023年9月30日 星期六
Handbrake的docker安裝
--- version: '3' services: handbrake: image: jlesage/handbrake container_name: handbrake ports: - 5800:5800 environment: - PUID=1000 - PGID=1000 - TZ=Asia/Taipei - LANG=zh_TW.UTF-8 volumes: - /srv/指定儲存區/docker/handbrake:/config:rw #存放docker程式資料 - /srv/指定儲存區/handbrake/HBstorage:/storage:ro #存放待轉檔影片位置 - /srv/指定儲存區/handbrake/HBwatch:/watch:rw #存放自動轉檔影片位置 - /srv/指定儲存區/handbrake/HBoutput:/output:rw #存放輸出檔案位置 - /usr/share/fonts:/usr/share/fonts #存放字型,需先安裝中文字型 restart: unless-stopped
HandBrake的Docker容器應用程式 GUI 可透過現代 Web 瀏覽器存取(無需要在客戶端安裝或設定)或透過任何 VNC 用戶端。 也提供全自動模式:將檔案放入監視資料夾中,然後讓 HandBrake 無需任何使用者互動即可處理它們。
2023年9月24日 星期日
常用 Docker 指令
Docker Service
查看Docker版本資訊
docker version
查看Docker系統資訊、Container數量、Image數量
docker info
查看Docker目前狀態
service docker status
啟動Docker Service
service docker start
將Docker Service重啟
service docker restart
將Docker Service停止
service docker stop
移除Docker
sudo apt-get purge docker-ce
sudo rm -rf /var/lib/docker
Container
匯出Container
docker export -o xxx.tar [ContainerID]
docker export [ContainerID] > xxx.tar
將上個指令產生的xxx.tar匯入成新的映像檔
cat xxx.tar | docker import - cutejaneii/xxx
停止Container
docker stop [container id]
停止全部Container
docker stop $(docker ps -a -q)
刪除Container
docker rm [container id]
刪除全部Container
docker rm $(docker ps -a -q)
列出目前運行的docker container
docker ps
列出目前所有的container(包含運行中及停止運行的的)
docker ps -a
啟動container
docker start [container id]
在外部對指定container執行bash
docker exec -it [container id] /bin/bash
重新命名container名稱
docker rename [container 原名稱] [container 新名稱]
參考來源
https://cutejaneii.gitbook.io/docker/docker/docker-chang-yong-zhi-ling
https://wp.me/p6Z7Zr-iA
2023年9月17日 星期日
Flame的docker安裝
flame: image: pawelmalak/flame container_name: flame volumes: - /srv/指定儲存區/flame/data:/app/data ports: - 5005:5005 environment: - PASSWORD=密碼 restart: unless-stopped
2023年4月22日 星期六
Nginx Proxy Manager 設定轉移
2023年3月30日 星期四
Nginx Proxy Manager 的docker安裝
Nginx Proxy Manager Stack
version: '3' services: app: image: 'jc21/nginx-proxy-manager:latest' restart: unless-stopped ports: - '80:80' - '81:81' - '443:443' volumes: - /srv/指定儲存區/nginx-config/data:/data - /srv/指定儲存區/nginx-config/letsencrypt:/etc/letsencrypt
配合主機管理必須使用80、81、443 port,避免出現問題,其他服務應避開使用這三個port。
81 port為NPM的管理頁面。
參考網址:
https://blog.darkthread.net/blog/nginx-proxy-manager/
2023年2月28日 星期二
Nextcloud的docker安裝
Nextcloud Stack
--- version: "2" services: nextcloud: image: linuxserver/nextcloud container_name: nextcloud environment: - PUID=1000 - PGID=100 - TZ=Asia/Taipei volumes: - /srv/指定儲存區/nextclud/config:/config #nextcloud設定檔 - /srv/指定儲存區/nextclud/data:/data #使用者資料 - /其他外部掛載資料夾:/外部掛載資料夾 networks: - mynet ports: - 443:443 restart: unless-stopped networks: mynet: external: name: mynet
參考網址:
https://www.youtube.com/watch?v=IxNA0tvK0zs
https://tvtv.fun/pc-to-nas/22th.html
資料庫mariadb、adminer的docker安裝
MariaDB Stack
為了方便資料庫與容器互相訪問,先在portainer的Networks手動建立一個橋接網路,以下範例使用的網路名稱為"mynet"
--- version: "2" services: mariadb: image: linuxserver/mariadb container_name: mariadb environment: - PUID=1000 - PGID=100 - MYSQL_ROOT_PASSWORD=ROOT帳戶密碼 - TZ=Asia/Taipei volumes: - /srv/指定儲存區/docker/mariadb_data:/config ports: - 3306:3306 networks: - mynet restart: unless-stopped adminer: image: adminer container_name: adminer environment: - ADMINER_DEFAULT_SERVER=mariadb ports: - 8080:8080 networks: - mynet restart: unless-stopped networks: mynet: external: name: mynet
管理資料庫
- 資料庫系統:MySQL
- 伺服器:mariadb
- 帳號:root
- 密碼:組態檔案中
MYSQL_ROOT_PASSWORD項的值
參考網址:
https://www.youtube.com/watch?v=6G4It1gr5G0
https://tvtv.fun/pc-to-nas/21th.html
2023年2月27日 星期一
目前使用docker容器列表
| 名稱 | 映像檔 | 用途 |
| adminer | adminer:latest | 用於管理數據庫內容的工具 |
| mariadb | linuxserver/mariadb | 資料庫管理系統 |
| nextcloud | linuxserver/nextcloud | 私人雲端硬碟伺服器 |
| aria2-pro | p3terx/aria2-pro | 下載管理器 |
| ariang | p3terx/ariang | aria2的Web UI |
| nginx-proxy-manager | jc21/nginx-proxy-manager | Nginx網頁伺服器管理與監控工具 |
| heimdall | lscr.io/linuxserver/heimdall | 個人導航網頁 |
| duckdns | lscr.io/linuxserver/duckdns | 免費DDNS |
| calibre-web | lscr.io/linuxserver/calibre-web | 個人雲端書庫 |
| Komga | gotson/komga | 個人雲端漫畫庫 |
| jellyfin | lscr.io/linuxserver/jellyfin | 個人雲端影片庫 |
| handbrake | jlesage/handbrake | 影片轉檔工具 |
| emulatorjs | lscr.io/linuxserver/emulatorjs | 瀏覽器來玩模擬器遊戲 |
| firefox | lscr.io/linuxserver/firefox | docker版的firefox瀏覽器 |
| metube | alexta69/metube | 影片下載工具youtube-dl的Web UI,可以顯示下載進度、列表 |
| youtube-dl-server | kmb32123/youtube-dl-server | 另一款youtube-dl的Web UI,僅下載功能無顯示下載進度、列表 |
| vlmcsd | mikolatero/vlmcsd | KMS啟用伺服器 |
| alist | xhofe/alist | 支援多種網路硬碟的網頁文件列表 |
| watchtower | containrrr/watchtower | 自動升級更新執行中的 Docker 容器 |
| fireflyiii | fireflyiii/core | 個人財務管理器 |
2023年2月5日 星期日
Docker容器無法強制開啟,並出現AppArmor錯誤、無法加載 docker-default 配置文件的解決方式
當Docker容器無法透過指令開啟時
docker start "CONTAINER ID"
並出現錯誤訊息
Error response from daemon: AppArmor enabled on system but the docker-default profile could not be loaded: running `apparmor_parser apparmor_parser --version` failed with output: error: exec: "apparmor_parser": executable file not found in $PATH
可能是apparmor套出現問題,重新安裝apparmor套件
apt install apparmor -y
並同意安裝套件維護者所提供的版本
參考網址
https://stackoverflow.com/questions/58393628/docker-error-response-from-daemon-apparmor-enabled-on-system-but-the-docker-de
