This docker image aims at providing a utilized development environment out of the box. Different from other images, it was designed to overcome some unknown network environment and let you make good usage of the target machine just like at home.
There are three different types of container with tags: base, advanced, latest:
baseonly contains very basic setup, so that you can modify a lot based on it.advancedcontains ssh, zero-tier network entrance and updated software, you can quickly start by specify$USERand$NETWORKENV variables.latestcontains all features inadvanced, besides, it has large pre-installed software and tools, such asZSHand zsh plugins.
It's recommended to start with advanced, by default the login user would be ubuntu:
docker run \
--name=build-sys \
--hostname=build-sys `#optional` \
-e NETWORK=yournetworkid `#zerotier` \
-e PUBLIC_KEY=yourpublickey `#optional` \
--net=host \
--cap-add=NET_ADMIN \
--cap-add=SYS_ADMIN \
--device=/dev/net/tun \
--restart unless-stopped \
monius/build-system-ubuntu:advanced -ddocker-compose.yaml could replace some args in a file to run a container. See docker-compose.yaml. Put essential environment variables in .env, then:
#start
docker-compose -f ./personal/docker-compose.yaml up -d
#stop
docker-compose -f ./personal/docker-compose.yaml downIt's easy to build your own container with ARG such as default login USER, etc:
See Docker-file and Entry-point. For example :
docker build -t build-personal \
--build-arg USER=monius \
./base-
Remove all:
docker system prune --all -
Remove containers all:
docker rm -f $(docker ps -a -q) -
Remove images all:
docker rmi -f $(docker images -a -q)