Difference between revisions of "Docker"
Line 41: | Line 41: | ||
To get into bash for a container. | To get into bash for a container. | ||
docker exec -it <container id> /bin/bash | docker exec -it <container id> /bin/bash | ||
+ | |||
+ | == Docker QuickStart Terminal == | ||
+ | When using the QuickStart terminal, it creates a virtual machine to run docker in. | ||
+ | |||
+ | To get to this machine. | ||
+ | docker-machine ssh default | ||
+ | |||
+ | A directory with persistent storage each time the machine starts up. | ||
+ | /var/lib/boot2docker/ | ||
+ | |||
+ | To create a startup scrip when the machine starts up. Create this file '''/var/lib/boot2docker/bootlocal.sh''' with execution permissions. | ||
+ | |||
+ | Tip: To sudo when in the machine | ||
+ | sudo -s | ||
+ | |||
+ | |||
+ | I had an issue with an invalid ssl cert. To fix the issue you must have the docker-machine load a file called daemon.json and inside the file you add untrusted URL sources. | ||
+ | |||
+ | 1. Log in to the docker-machine | ||
+ | docker-machine ssh default | ||
+ | |||
+ | sudo -s | ||
+ | |||
+ | 3. Change directories to the persistent storage directory. | ||
+ | cd /var/lib/boot2docker/ | ||
+ | |||
+ | 4. Create the daemon.json file. | ||
+ | { | ||
+ | "insecure-registries" : ["myregistrydomain.com:5000"] | ||
+ | } | ||
+ | |||
+ | 5. Create a boot script for the docker machine | ||
+ | touch /var/lib/boot2docker/bootlocal.sh && chmod +x /var/lib/boot2docker/bootlocal.sh | ||
+ | |||
+ | 6. Edit the file and copy the daemon.json file to the correct location. | ||
+ | #!/bin/sh | ||
+ | cp /var/lib/boot2docker/daemon.json /etc/docker/daemon.json | ||
+ | |||
+ | 7. Exit the docker-machine | ||
+ | |||
+ | 8. Restart the docker machine | ||
+ | docker-machine restart |
Revision as of 10:53, 12 September 2019
This is a page all about Docker and helpful commands.
Docker File
ARG These are arguments that can be used in side the docker file.
ARG BASE_DIR=/opt/app ... COPY ./file.txt $BASE_DIR
Port To expose port to docker to be exposed, lol kind of redundant.
EXPOSE 4000
Docker Images
List This will show a list of all docker images.
docker images
Remove This will remove an image from the list.
docker rmi {imagename}:{tag}
You might need to force it.
docker rmi -f {imagename}:{tag}
Run This is how you run an image
docker run -it {imagename}:{tag}
To open the ports. Make sure you do this and have the ports exposed in your Dockerfile.
docker run -p 8080:8080 -it {imagename}:{tag}
To run the image in a detacted container for it run in the background.
docker run -d -it {imagename}:{tag}
To run an image and go right into bash for the starting point.
docker run -it --entrypoint "/bin/bash" {imagename}:{tag}
To get into bash for a container.
docker exec -it <container id> /bin/bash
Docker QuickStart Terminal
When using the QuickStart terminal, it creates a virtual machine to run docker in.
To get to this machine.
docker-machine ssh default
A directory with persistent storage each time the machine starts up.
/var/lib/boot2docker/
To create a startup scrip when the machine starts up. Create this file /var/lib/boot2docker/bootlocal.sh with execution permissions.
Tip: To sudo when in the machine
sudo -s
I had an issue with an invalid ssl cert. To fix the issue you must have the docker-machine load a file called daemon.json and inside the file you add untrusted URL sources.
1. Log in to the docker-machine
docker-machine ssh default
sudo -s
3. Change directories to the persistent storage directory.
cd /var/lib/boot2docker/
4. Create the daemon.json file.
{ "insecure-registries" : ["myregistrydomain.com:5000"] }
5. Create a boot script for the docker machine
touch /var/lib/boot2docker/bootlocal.sh && chmod +x /var/lib/boot2docker/bootlocal.sh
6. Edit the file and copy the daemon.json file to the correct location.
#!/bin/sh cp /var/lib/boot2docker/daemon.json /etc/docker/daemon.json
7. Exit the docker-machine
8. Restart the docker machine
docker-machine restart