This repo contains various examples of Docker files that have been created to help people get started with Docker and Kubernetes.
Docker Example Status: Ready for use
Kubernetes Example Status: Ready for use
This repo is automatically verified with the GitHub
build system. If you want to see an example of a build,
click on the button below.
The examples contained in this repo run on GCP and standard Kubernetes. They are sequences of kubectl
commands
that show what Kubernetes can do.
They can be found in the samples/kubernetes
directory. You will need to install or have access to a Kubernetes
or GKE system to run them. They also rely on the Docker images having been created.
The examples contained in this repo run on various flavours of Linux. The examples are driven by a set of simple makefiles.
Before running these examples you will need to have installed GNUMake
or other Make and Docker
.
First download the repo using git
% git clone https://github.com/tpayne/docker-examples.git
% cd docker-examples
To run the examples simply do the following...
% cd samples; gmake
This will build all the examples.
To clean up, simply repeat with the clean target
% cd samples; gmake clean
The examples will run various Dockerfiles building containers for Centos
, OpenSuse
and Busybox
.
More examples will be added at a later date.
To show and run the containers you have just created, you can use the following commands...
% docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dockerfilesuse.img latest 8eb7d429b10c 1 second ago 316MB
dockerfilepostgres.img latest 78471a1dc2ff About a minute ago 486MB
dockerfileminecraft.img latest e3aaa6b77dae 2 minutes ago 487MB
dockerfilemediawiki.img latest 592aade42d4b 3 minutes ago 2.2GB
dockerfilejenkins.img latest 412a063b5b4e 14 minutes ago 876MB
dockerfilemongodb.img latest 2c9bf248cced 16 minutes ago 981MB
dockerfilewebserver.img latest 4523f5f7003f 17 minutes ago 154MB
dockerfileubuntu.img latest 9dd9893c98e2 18 minutes ago 476MB
dockerfilebasic.img latest ccd0b50f1482 19 minutes ago 387MB
dockerfiledevenvadv.img latest a010f42e17a4 19 minutes ago 1.21GB
dockerfiledevenv.img latest 53b4edc3db85 20 minutes ago 1.17GB
dockerfilesimple.img latest cf3afa09e1a4 22 minutes ago 1.22MB
ubuntu latest 72300a873c2c 7 days ago 64.2MB
opensuse/leap latest 38924343a351 2 weeks ago 103MB
centos latest 470671670cac 6 weeks ago 237MB
busybox latest 6d5fcfe5ff17 2 months ago 1.22MB
The docker images
command lists all the images you have created. You can then run them via the docker run
command
as shown in the example below...
% docker run -i -t dockerfiledevenv.img
[root@21b717998a7c /]# df -H
Filesystem Size Used Avail Use% Mounted on
overlay 63G 5.6G 54G 10% /
tmpfs 68M 0 68M 0% /dev
tmpfs 1.1G 0 1.1G 0% /sys/fs/cgroup
/dev/sda1 63G 5.6G 54G 10% /etc/hosts
shm 68M 0 68M 0% /dev/shm
tmpfs 1.1G 0 1.1G 0% /proc/acpi
tmpfs 1.1G 0 1.1G 0% /sys/firmware
[root@21b717998a7c /]# gcc --version
gcc (GCC) 8.3.1 20190507 (Red Hat 8.3.1-4)
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[root@21b717998a7c /]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 4
Vendor ID: GenuineIntel
CPU family: 6
Model: 58
Model name: Intel(R) Core(TM) i7-3840QM CPU @ 2.80GHz
Stepping: 9
CPU MHz: 2791.549
BogoMIPS: 5583.09
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 8192K
[root@21b717998a7c /]# exit
Replace dockerfiledevenv.img
with the container name you wish to use.
The following table contains the file descriptions.
Docker File Description busybox/DockerFileSimple.docker
Docker file to setup a Busybox container and run some commands on it centos/DockerFileBasic.docker
Docker file to setup a Centos container and install some packages on it centos/DockerFileDevEnv.docker
Docker file to setup a Centos container and install a dev environment on it centos/DockerFileDevEnvAdv.docker
Docker file to setup a Centos container, install a dev environment on it, then create some users plus groups opensuse/DockerFileSuse.docker
Docker file to setup an OpenSUSE container and install some packages on it ubuntu/DockerFileJenkins.docker
Docker file to setup an Ubuntu container and a Jenkins CI server in it ubuntu/DockerFileKubernetes.docker
Docker file to setup an Ubuntu container and Docker/Kubernetes into it ubuntu/DockerFileMediaWiki.docker
Docker file to setup an Ubuntu container and a MediaWiki server in it ubuntu/DockerFileMinecraft.docker
Docker file to setup an Ubuntu container and a Minecraft server in it ubuntu/DockerFileMongoDB.docker
Docker file to setup an Ubuntu container and a Mongo NoSQL DB server in it ubuntu/DockerFilePostgres.docker
Docker file to setup an Ubuntu container and a PostgreSQL DB server in it ubuntu/DockerFileUbuntu.docker
Docker file to setup an Ubuntu container and install some packages on it ubuntu/DockerFileWebServer.docker
Docker file to setup an Ubuntu container and a webserver in it
The contents of this repository (documents and examples) are provided “as-is” with no warrantee implied or otherwise about the accuracy or functionality of the examples.
You use them at your own risk. If anything results to your machine or environment or anything else as a result of ignoring this warning, then the fault is yours only and has nothing to do with me.
Note - The docker files worked at time of creation, but I often find that Ubuntu repos often get "screwed", so do not be surprised if the docker files need maintenance. I might do this sometimes, but only as I need to.
This software is licensed using the terms and provisions of the MIT license.
Google packages are release under their licensing - Apache 2.0
- Windows references - https://github.com/MicrosoftDocs/Virtualization-Documentation/tree/main/windows-container-samples
- https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile#:~:text=%20Dockerfile%20on%20Windows%20%201%20Basic%20Syntax.,Dockerfile%20with%20the%20RUN%20operation.%20PowerShell%27s...%20More%20