Home >Backend Development >Golang >Correct shell program for golang alpine docker container entry point?
What is the correct shell entry point for Golang Alpine Docker container? This is a problem that many developers often encounter when building Docker containers using Golang and Alpine images. Before solving this problem, we first need to understand the relevant knowledge of Golang and Alpine. Golang is an efficient and concise programming language, while Alpine is a lightweight Linux distribution. When using Alpine as the base image, some common Shell commands may be missing due to its streamlined nature. So, how to correctly set the entry point of the Golang Alpine Docker container so that it can run the shell program? Let's take a look at the answer provided by php editor Apple.
I'm trying to start a golang alpine docker container (just the base image) and immediately connect to it to run commands, but I can't seem to specify the correct shell.
docker run -d golang:1.20-alpine --entrypoint=bin/sh ec90a5d5eeba63e509acc09e234054d883aa122cd7617f89b61e7d71220847cd docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "--entrypoint=bin/sh": stat --entrypoint=bin/sh: no such file or directory: unknown.
I also tried: /bin/sh
. What am I missing here?
I will just write an answer in the comments instead of a command.
To start the golang alpine docker container (just the base image) and immediately connect to it to run commands, you can do the following:
docker run -it golang:1.20-alpine /bin/sh
If you want to name your container, you can do this:
docker pull golang:1.20-alpine docker run -id --name=test5 golang:1.20-alpine docker exec -it test5 /bin/sh
You can use docker stop test5 -t 2
to stop the container, and then use docker start test5
to start the container again.
You can delete it by executing docker rm test5
.
You can change the command slightly to avoid the error:
docker run -d --entrypoint=/bin/sh golang:1.20-alpine
Please note that the --entrypoint
command line switch is before golang:1.20-alpine.
The above is the detailed content of Correct shell program for golang alpine docker container entry point?. For more information, please follow other related articles on the PHP Chinese website!