Bitnami Secure Image for golang
1M+
Go is an object oriented programming language with sensible primitives, static typing and reflection. It also supports packages for efficient management of dependencies.
Overview of Golang Trademarks: This software listing is packaged by Bitnami. The respective trademarks mentioned in the offering are owned by the respective companies, and use of them does not imply any affiliation or endorsement.
docker run --name golang REGISTRY_NAME/bitnami/golang:latest
Note: You need to substitute the
REGISTRY_NAMEplaceholder with a reference to your container registry.
Dockerfile linksLearn more about the Bitnami tagging policy and the difference between rolling tags and immutable tags in our documentation page.
The recommended way to get the Bitnami Golang Docker Image is to pull the prebuilt image from the Docker Hub Registry.
docker pull REGISTRY_NAME/bitnami/golang:latest
To use a specific version, you can pull a versioned tag. You can view the list of available versions in the Docker Hub Registry.
docker pull REGISTRY_NAME/bitnami/golang:[TAG]
If you wish, you can also build the image yourself by cloning the repository, changing to the directory containing the Dockerfile and executing the docker build command. Remember to replace the APP, VERSION and OPERATING-SYSTEM path placeholders in the example command below with the correct values.
git clone https://github.com/bitnami/containers.git
cd bitnami/APP/VERSION/OPERATING-SYSTEM
docker build -t REGISTRY_NAME/bitnami/APP:latest .
docker-compose.yamlPlease be aware this file has not undergone internal testing. Consequently, we advise its use exclusively for development or testing purposes.
For persistence you should mount a directory at the /bitnami path. If the mounted directory is empty, it will be initialized on the first run.
docker run \
-v /path/to/golang-persistence:/bitnami \
REGISTRY_NAME/bitnami/golang:latest
You can also do this with a minor change to the docker-compose.yml file present in this repository:
golang:
...
volumes:
- /path/to/golang-persistence:/bitnami
...
Using Docker container networking, a different server running inside a container can easily be accessed by your application containers and vice-versa.
Containers attached to the same network can communicate with each other using the container name as the hostname.
The following section describes how to run commands
The default workspace for the Bitnami Golang image is /go (GOPATH, consult Golang documentation for more info about workspaces). You can mount your custom Golang project from your host, and run it normally using the go command.
$ docker -it --name golang run \
-v /path/to/your/project:/go/src/project \
bitnami/golang \
bash -ec 'cd src/project && go run .'
The Bitnami Golang Docker image from the Bitnami Secure Images catalog includes extra features and settings to configure the container with FIPS capabilities. You can configure the next environment variables:
OPENSSL_FIPS: whether OpenSSL runs in FIPS mode or not. yes (default), no.GODEBUG: controls Go FIPS mode. Use fips140=only (restricted), fips140=on (relaxed), or fips140=off (disabled).The Bitnami Golang Docker image sends the container logs to stdout. To view the logs:
docker logs golang
You can configure the containers logging driver using the --log-driver option if you wish to consume the container logs differently. In the default configuration docker uses the json-file driver.
Copyright © 2026 Broadcom. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.