1. 程式人生 > 實用技巧 >【Sublinux】Station P1在Android上使用容器Docker

【Sublinux】Station P1在Android上使用容器Docker

Sublinux是通過Android上使用chroot打造的Linux執行環境,讓Station可同時使用Android、Linux的應用和Docker容器服務。

Docker簡介


Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的Linux機器或Windows 機器上,也可以實現虛擬化,容器是完全使用沙箱機制,相互之間不會有任何介面。

Station P1 在Android上提供了Docker的執行環境,支援同時執行Android應用和Docker服務。

SSH登入Station P1,station_ip根據實際IP修改,預設密碼為firefly:

sshstation@station_ip

  

登入後可以檢視Docker版本和執行的容器列表:

前面講到的【Sublinux】系列帖子中的各種應用服務,也都是基於Docker上執行:【Sublinux】用Station P1在Android上打造Nextcloud私有云盤
【Sublinux】Station P1在Android上使用Plex
【Sublinux】Station P1在Andriod上使用AriaNg遠端下載
【Sublinux】Station P1在Android上使用Samba共享檔案

使用

Sublinux上的docker/docker-compose使用方法與平常的沒有差別,可以參考官方或者其他教程。

station@localhost:~/docker/station$ docker info
Client:
 Debug Mode: false

Server:
 Containers: 8
Running: 8
Paused: 0
Stopped: 0
 Images: 8
 Server Version: 19.03.8
 Storage Driver: overlay2
Backing Filesystem: <unknown>
Supports d_type: true
Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
 init version: fec3683
 Security Options:
seccomp
 Profile: default
 Kernel Version: 4.4.126
 Operating System: Ubuntu 18.04.3 LTS
 OSType: linux
 Architecture: aarch64
 CPUs: 6
 Total Memory: 3.754GiB
 Name: localhost
 ID: AOZB:FKCD:RRP7:LSSI:ARGY:WYTX:UZQH:DEXA:6NY3:HTVZ:CL47:JN5E
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
127.0.0.0/8
 Registry Mirrors:
https://dockerhub.azk8s.cn/
https://hub-mirror.c.163.com/
 Live Restore Enabled: false

station@localhost:~/docker/station$ docker-compose ps
  Name        Command     State          Ports
----------------------------------------------------------------------------------------------------------------------------
station.aria2       /init           Up  443/tcp, 0.0.0.0:6800->6800/tcp, 0.0.0.0:10080->80/tcp
station.emby      /init           Up
station.netdata     /usr/sbin/run.sh    Up  0.0.0.0:19999->19999/tcp
station.nextcloud    /init           Up  0.0.0.0:443->443/tcp, 80/tcp
station.nextcloud.db  /init          Up  3306/tcp
station.plex      /init          Up
station.samba    /sbin/tini -- /usr/bin/sam ... Up  137/udp, 138/udp, 0.0.0.0:139->139/tcp, 0.0.0.0:445->445/tcp

  

內建的Docker編排檔案docker-compose.yml放在/home/station/docker。 Sublinux定義了常用目錄的存放路徑,方便管理和各種內外接儲存利用,使用方法可參考內建的docker-compose.yml:
  • 應用資料儲存路徑(EXT4使用模式時指向EXT4外接儲存,其他模式指向內建的Android資料空間)SL_DATA_PATH=/data
  • 使用者/媒體檔案儲存路徑SL_MEDIA_PATH=/media
  • 使用者/媒體檔案主儲存路徑(EXT4使用模式時指向EXT4外接儲存,其他模式指向內建的Android使用者空間)SL_MEDIA_MAIN_PATH=/media/main
  • 內建儲存路徑(指向內建的Android使用者空間)SL_MEDIA_INTERNAL_PATH=/media/internal
  • 外接儲存路徑(如U盤)SL_STORAGE_PATH=/storage


Portainer簡介

Portainer是一個開源、輕量級Docker管理使用者介面,基於Docker API,提供狀態顯示面板、應用模板快速部署、容器映象網路資料卷的基本操作(包括上傳下載映象,建立容器等操作)、事件日誌顯示、容器控制檯操作、Swarm叢集和服務等集中管理和操作、登入使用者管理和控制等功能。

使用

網頁端登入http://station_ip:9000,第一次登入時需要建立使用者和密碼,以及配置環境,環境選擇Local即可。


在這裡,你可以進行容器啟動/停止、重啟、暫停等操作;可以自己編排容器,自定義自己的服務和配置。

參考

———————————————

更多資訊請關注Firefly公眾微訊號fireflytee:
——————————————— Firefly官網:http://www.t-firefly.com
Firefly開源社群:http://developer.t-firefly.com