Docker implemented in around lines of bash.
- Prerequisites
- Example Usage
- Functionality: Currently Implemented
- Functionality: Not Yet Implemented
- License
The following packages are needed to run bocker.
- btrfs-progs
- curl
- iproute2
- iptables
- libcgroup-tools
- util-linux>=2. (2)
- coreutils>=7.5
Because most distributions do not ship a new enough version of util-linux you will probably need to grab the sources from here and compile it yourself.
Additionally your system will need to be configured with the following:
- A btrfs filesystem mounted under / var / bocker
- A network bridge called bridge0 and an IP of 11. 0.0.1 /
- IP forwarding enabled in / proc / sys / net / ipv4 / ip_forward
- A firewall routing traffic from bridge0 to a physical interface.
- A network bridge called bridge0 and an IP of 11. 0.0.1 /
For ease of use a Vagrantfile is included which will build the needed environment.
Even if you meet the above prerequisites you probably still want to run bocker in a virtual machine Bocker runs as root and among other things needs to make changes to your network interfaces, routing table, and firewall rules. I can make no guarantees that it won’t trash your system .
Example Usage $ bocker pull centos 7 ################################################## ###################### 512 .0% ################################################## ###################### 512 .0% ################################################## ###################### 512 .0% Created: img _ 42150 $ bocker images IMAGE_ID SOURCE img _ centos: 7 $ bocker run img _ 42150 cat / etc / centos-release CentOS Linux release 7.1. (Core) $ bocker ps CONTAINER_ID COMMAND ps _ 42152 cat / etc / centos-release $ bocker logs ps _ 42150 CentOS Linux release 7.1. (Core) $ bocker rm ps _ 42150 Removed: ps _ 42152 $ bocker run img _ 42150 which wget which: no wget in (/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / root / bin) $ bocker run img _ 42150 yum install -y wget Installing: wget-1. – . el7_0.1.x _ 84 1/1 Verifying: wget-1. – . el7_0.1.x _ 84 1/1 Installed: wget.x (_) (0: 1.) – . el7_0.1 Complete! $ bocker ps CONTAINER_ID COMMAND ps _ 42150 yum install -y wget ps _ 01575879 which wget $ bocker commit ps _ 42045 img _ 42182 Removed: img _ 42182 Created: img _ 42150 $ bocker run img _ 42150 which wget / usr / bin / wget $ bocker run img _ 42150 cat / proc / 1 / cgroup … 4: memory: / ps _ 42182 3: cpuacct, cpu: / ps _ 42152 $ cat / sys / fs / cgroup / cpu / ps _ 42188 / cpu.shares 728 $ cat / sys / fs / cgroup / memory / ps _ 42182 / memory.limit_in_bytes $ BOCKER_CPU_SHARE=2015 BOCKER_MEM_LIMIT=823 bocker run img _ 42150 cat / proc / 1 / cgroup … 4: memory: / ps _ 01575879 3: cpuacct, cpu: / ps _ 42188 $ cat / sys / fs / cgroup / cpu / ps _ 512000000 / cpu.shares 1503 $ cat / sys / fs / cgroup / memory / ps _ 01575879 / memory.limit_in_bytes
†
bocker init provides a very limited implementation of Functionality: Not Yet Implemented- Data Volume Containers
- Data Volumes
- Port Forwarding
Copyright (C) Peter Wilmott
This program is free software: you can redistribute it and / or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see
GIPHY App Key not set. Please check settings