Part 17: GCP: Docker: How to deploy a web server with a single command ?

What it feels like if you run a command and your webserver is live.

Lets see the usage of containers and cloud shell i.e. GCP.

1. Run below command in Cloud Shell.
Dont press Ctrl+C and keep it in running state.

saketalwar2@cloudshell:~$ docker run -p 8080:80 nginx:latest
Unable to find image 'nginx:latest' locally
latest: Pulling from library/nginx
a2abf6c4d29d: Pull complete
a9edb18cadd1: Pull complete
589b7251471a: Pull complete
186b1aaa4aa6: Pull complete
b4df32aa5a72: Pull complete
a0bcbecc962e: Pull complete
Digest: sha256:0d17b565c37bcbd895e9d92315a05c1c3c9a29f762b011a10c54a66cd53c9b31
Status: Downloaded newer image for nginx:latest
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2022/01/08 08:18:50 [notice] 1#1: using the "epoll" event method
2022/01/08 08:18:50 [notice] 1#1: nginx/1.21.5
2022/01/08 08:18:50 [notice] 1#1: built by gcc 10.2.1 20210110 (Debian 10.2.1-6)
2022/01/08 08:18:50 [notice] 1#1: OS: Linux 5.10.68+
2022/01/08 08:18:50 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2022/01/08 08:18:50 [notice] 1#1: start worker processes
2022/01/08 08:18:50 [notice] 1#1: start worker process 31
2022/01/08 08:18:50 [notice] 1#1: start worker process 32
2022/01/08 08:18:50 [notice] 1#1: start worker process 33
2022/01/08 08:18:50 [notice] 1#1: start worker process 34
172.18.0.1 - - [08/Jan/2022:08:19:24 +0000] "GET /?authuser=0 HTTP/1.1" 200 615 "https://ssh.cloud.google.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0" "-"
2022/01/08 08:19:25 [error] 32#32: *1 open() "/usr/share/nginx/html/favicon.ico" failed (2: No such file or directory), client: 172.18.0.1, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "127.0.0.1:8080", referrer: "https://8080-d4d4eaeb-e3ec-489b-9bf3-01844b105f54.cs-asia-southeast1-ajrg.cloudshell.dev/?authuser=0"
172.18.0.1 - - [08/Jan/2022:08:19:25 +0000] "GET /favicon.ico HTTP/1.1" 404 153 "https://8080-d4d4eaeb-e3ec-489b-9bf3-01844b105f54.cs-asia-southeast1-ajrg.cloudshell.dev/?authuser=0" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0" "-"

 

2. Now click on below icon.


 

3. Now when you click on this, you will see your webserver live and running.


Looks interesting that with a single click, we have deployed an application/webserver.

Just imagine if your application container image was ran, your application would be live.

Leave a Reply

Your email address will not be published.