The following command list are my steps to build a customized Drupal docker image.
The are two ways to build your own image:
1. Updating and committing an image
First, it would be better to have a Docker Hub account like this:Second, to create a repository for your docker image.
If it's done, you can see this:
So, we can continue to the next step.
# Download the offical Drupal docker image
$ docker search drupal
$ docker pull drupal
$ docker images
# Create a container and update it ( be aware of the follwing parameters )
$ docker run -i -t --name danny_drupal -p 8000:80 drupal /bin/bash
-i, --interactive Keep STDIN open even if not attached
-t, --tty Allocate a pseudo-TTY
-p, --publish=[] Publish a container's port(s) to the host
# From now on, you can go anything for your container
root@2a0849519c71:/var/www/html# apt-get update
root@2a0849519c71:/var/www/html# apt-get install openssh-server cloud-init -y
root@2a0849519c71:/var/www/html# exit
# To commit my changes
$ docker commit -m "Added my services" -a "teyenliu" \
danny_drupal teyenliu/drupal:v1
# Have to login docker before you push your change
$ docker login --username=teyenliu
$ docker push teyenliu/drupal
# Now it is successful to push your own drupal image and you also can see it on docker hub:
# To test your own drupal image:
$ docker run --name danny_drupal -p 8000:80 -d teyenliu/drupal:v1
# To check if the container is running
$ docker ps
# Open your browser with http://127.0.0.1:8000
2. Buidling an image from Dockerfile
$ vim Dockerfile# This is a commentFROM drupal:latestMAINTAINER TeYen Liu <teyen.liu@gmail.com>RUN apt-get update && apt-get install -y gitRUN apt-get install -y openssh-serverRUN apt-get install -y cloud-init
$ docker push teyenliu/drupal:v2
# The drupal repository will append the image of tag:v2
P.S: If you want to put the docker image to OpenStack Glance for further using, here is an example command:
$ docker save teyenliu/drupal | glance image-create --container-format docker --disk-format raw --name teyenliu/druapl
No comments:
Post a Comment