Docker: Difference between revisions

From Halfface
Jump to navigation Jump to search
No edit summary
Line 69: Line 69:
If you want to see all settings
If you want to see all settings
  docker inspect e2f7a7e275d5
  docker inspect e2f7a7e275d5
=look at mounts=
docker inspect -f ‘{{ .Mounts }}’ 79b9ab19ace0
Guess which container uses which ip.
Guess which container uses which ip.
  docker ps 2>&1 | grep -v '^CONTAINER ID' | while read ID THE_REST ; do echo '***' $ID $THE_REST ; docker inspect $ID | grep '"5000"' ; done
  docker ps 2>&1 | grep -v '^CONTAINER ID' | while read ID THE_REST ; do echo '***' $ID $THE_REST ; docker inspect $ID | grep '"5000"' ; done
=install guacamole=
=install guacamole=
Create a mysql database.
Create a mysql database.
Line 79: Line 80:
Start guacamole
Start guacamole
  CREDS=guacamole ; docker run --name some-guacamole --link some-guacd:guacd -e MYSQL_DATABASE=${CREDS} -e MYSQL_HOSTNAME=172.17.0.1 -e MYSQL_PORT=3306 -e MYSQL_USER=${CREDS} -e MYSQL_PASSWORD=${CREDS} -d -p 8080:8080 guacamole/guacamole
  CREDS=guacamole ; docker run --name some-guacamole --link some-guacd:guacd -e MYSQL_DATABASE=${CREDS} -e MYSQL_HOSTNAME=172.17.0.1 -e MYSQL_PORT=3306 -e MYSQL_USER=${CREDS} -e MYSQL_PASSWORD=${CREDS} -d -p 8080:8080 guacamole/guacamole
=look at mounts=
docker inspect -f ‘{{ .Mounts }}’ 79b9ab19ace0
=docker history image_name=
=docker history image_name=
name> will show the layers baked into an image.
name> will show the layers baked into an image.
  docker history $image
  docker history $image

Revision as of 12:19, 23 March 2021

install docker on fedora 21

Step 1: Install Docker on Fedora 21

  • As a matter of best practice, we’ll update our packages:
yum update -y
  • Let’s install Docker by installing the docker-io package:
yum -y install docker-io
  • Once the installation completes, we’ll need to start the Docker daemon:
systemctl start docker
  • And finally, and optionally, let’s configure Docker to start when the server boots:
systemctl enable docker
  • Step 2: Download a Docker Container
docker pull marina/fedora21-i386

Step 3: Run a Docker Container basic fedora container with a bash shell, we just run one command. docker run will run a command in a new container, -i attaches stdin and stdout, -t allocates a tty, and we’re using the standard fedora

docker run -i -t marina/fedora21-i386 /bin/bash

connect, or detach, from the shell without exiting use the escape sequence Ctrl-p + Ctrl-q.

sudo docker run -i -t -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --rm marina/fedora21-i386 /bin/bash

Update image

sed -i 's/\$releasever/21/g;s/\$basearch/i386/g' /etc/yum.repos.d/*
yum clean all
yum -y update
yum -y install firefox
yum -y install https://www.halfface.se/jdk-8u40-linux-i586.rpm
alternatives --install /usr/bin/java java /usr/java/latest/jre/bin/java 200000
alternatives --install /usr/bin/javaws javaws /usr/java/latest/jre/bin/javaws 200000
alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so libjavaplugin.so /usr/java/latest/jre/lib/i386/libnpjp2.so 200000
alternatives --install /usr/lib64/mozilla/plugins/libjavaplugin.so libjavaplugin.so.x86_64 /usr/java/latest/jre/lib/amd64/libnpjp2.so 200000
ln -sf /usr/java/latest/jre/lib/i386/libnpjp2.so /etc/alternatives/libjavaplugin.so
yum -y install 'xorg-x11-fonts*'
*Search for images.
docker search fedora

attach container

List containers.

sudo docker ps
CONTAINER ID        IMAGE                        COMMAND             CREATED             STATUS              PORTS               NAMES
315ea401e287        marina/fedora21-i386:0.1.0   "/bin/bash"         About an hour ago   Up About an hour                        elated_nobel        

list all containers

docker ps -a
docker ps -a --no-trunc

Connect container

Reconnect process. When you do CTRL + c it will die.

sudo docker attach 315ea401e287

list images

sudo docker images

delete image

docker rmi 315ea401e287

delete container

docker container rm cc3f2ff51cab cd20b396a061

Connect to image

docker exec -it elated_nobel /bin/bash

logs

Look at log output from container.

docker logs some-guacamole
docker logs --follow 123141234

stop

Stop docker image.

docker stop 7bcf035e1a4e

start

Start docker image

docker start 7bcf035e1a4e

list ip address of container

docker inspect -f 'Template:Range.NetworkSettings.NetworksTemplate:.IPAddressTemplate:End' c7eec987a17b

If you want to see all settings

docker inspect e2f7a7e275d5

look at mounts

docker inspect -f ‘Template:.Mounts’ 79b9ab19ace0

Guess which container uses which ip.

docker ps 2>&1 | grep -v '^CONTAINER ID' | while read ID THE_REST ; do echo '***' $ID $THE_REST ; docker inspect $ID | grep '"5000"' ; done

install guacamole

Create a mysql database.

mysql ...

Start guacd

docker run --name some-guacd -d guacamole/guacd

Start guacamole

CREDS=guacamole ; docker run --name some-guacamole --link some-guacd:guacd -e MYSQL_DATABASE=${CREDS} -e MYSQL_HOSTNAME=172.17.0.1 -e MYSQL_PORT=3306 -e MYSQL_USER=${CREDS} -e MYSQL_PASSWORD=${CREDS} -d -p 8080:8080 guacamole/guacamole

docker history image_name

name> will show the layers baked into an image.

docker history $image