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:  
  1. ssh  station@station_ip
复制代码
登录后可以查看Docker版本和运行的容器列表:  

docker_info.png

前面讲到的【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使用方法与平常的没有差别,可以参考官方或者其他教程。  
  1. station@localhost:~/docker/station$ docker info
  2. Client:
  3. Debug Mode: false

  4. Server:
  5. Containers: 8
  6.   Running: 8
  7.   Paused: 0
  8.   Stopped: 0
  9. Images: 8
  10. Server Version: 19.03.8
  11. Storage Driver: overlay2
  12.   Backing Filesystem: <unknown>
  13.   Supports d_type: true
  14.   Native Overlay Diff: true
  15. Logging Driver: json-file
  16. Cgroup Driver: cgroupfs
  17. Plugins:
  18.   Volume: local
  19.   Network: bridge host ipvlan macvlan null overlay
  20.   Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
  21. Swarm: inactive
  22. Runtimes: runc
  23. Default Runtime: runc
  24. Init Binary: docker-init
  25. containerd version: 7ad184331fa3e55e52b890ea95e65ba581ae3429
  26. runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
  27. init version: fec3683
  28. Security Options:
  29.   seccomp
  30.    Profile: default
  31. Kernel Version: 4.4.126
  32. Operating System: Ubuntu 18.04.3 LTS
  33. OSType: linux
  34. Architecture: aarch64
  35. CPUs: 6
  36. Total Memory: 3.754GiB
  37. Name: localhost
  38. ID: AOZB:FKCD:RRP7:LSSI:ARGY:WYTX:UZQH:DEXA:6NY3:HTVZ:CL47:JN5E
  39. Docker Root Dir: /var/lib/docker
  40. Debug Mode: false
  41. Registry: https://index.docker.io/v1/
  42. Labels:
  43. Experimental: false
  44. Insecure Registries:
  45.   127.0.0.0/8
  46. Registry Mirrors:
  47.   https://dockerhub.azk8s.cn/
  48.   https://hub-mirror.c.163.com/
  49. Live Restore Enabled: false

  50. station@localhost:~/docker/station$ docker-compose ps
  51.         Name                      Command               State                              Ports
  52. ----------------------------------------------------------------------------------------------------------------------------
  53. station.aria2                   /init                               Up      443/tcp, 0.0.0.0:6800->6800/tcp, 0.0.0.0:10080->80/tcp
  54. station.emby                  /init                               Up
  55. station.netdata               /usr/sbin/run.sh              Up      0.0.0.0:19999->19999/tcp
  56. station.nextcloud            /init                               Up      0.0.0.0:443->443/tcp, 80/tcp
  57. station.nextcloud.db        /init                              Up      3306/tcp
  58. station.plex                    /init                              Up
  59. 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即可。  

portainer.png

在这里,你可以进行容器启动/停止、重启、暂停等操作;可以自己编排容器,自定义自己的服务和配置。  

参考