Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Buildroot上做一些开发相比ubuntu等版本麻烦不少,如果结合Docker做应用开发,将会方便快捷很多。
目前笔者在ROC-RK3308-CC上加上了docker,固件下载链接: https://pan.baidu.com/s/1mtvtkFcNGVvmaPJZSBut6w 提取码: qbh6
下面演示一下docker在ROC-RK3308-CC上运行的方法:
1.参考wiki烧写ROC-RK3308-CC_Buildroot_Docker_20181116.img
2.参考wiki配置网络,比如以太网的话终端(打开调试串口或者adb shell进入)输入:

udhcpc -i eth0 -R

3.查看docker信息:

/ # docker info
Containers: 5
 Running: 2
 Paused: 0
 Stopped: 3
Images: 3
Server Version: 17.05.0-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins: 
 Volume: local
 Network: bridge host macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9048e5e50717ea4497b757314bad98ea3763c145
runc version: N/A (expected: 9c2d8d184e5da67c95d601382adf14862e4f2228)
init version: N/A (expected: )
Kernel Version: 4.4.143
Operating System: Buildroot 2018.02-rc3
OSType: linux
Architecture: aarch64
CPUs: 4
Total Memory: 239.1MiB
Name: rockchip
ID: YOD6:GF5Y:RBBS:4AJF:PCAD:V4QU:OTGW:2PKL:CJUN:LKET:FGWN:YAZR
Docker Root Dir: /userdata/docker/lib
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Live Restore Enabled: false

4. 运行hello-world

docker run hello-world

来点复杂一些的应用,比如samba:

docker run -v /userdata/:/mount/ROC-RK3308-CC -p 445:445 -p 139:139 -e USERID=0 -e GROUPID=0  --name samba -d dperson/samba:aarch64 -S -u "firefly;firefly" -s "firefly;/mount/;yes;no;no;all;firefly;firefly;"

接下来就可以在其他终端,比如windows cmd上打开,然后操作文件了:

net use X: \\168.168.100.71\firefly /u:firefly firefly

 

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

更多信息请关注Firefly公众微信号fireflytee:

ROC-RK3308-CC Buildroot上使用Docker_Firefly

 

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

Firefly开源社区:http://developer.t-firefly.com