Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
October 12, 2022 08:24 am GMT

Learning GO - Creating the environment using docker - Part 1

Hey guys! How are you? Hope everyone is ok!

I'm a Rails developer that wants to learn Go and document the process on this series of articles. It's worth mentioning that I'm learning this technology, so, suggestions are welcome :)

In this article I'll setup docker and test it with a hello world!

Table of Content

  • Setting up Docker
  • Creating hello world
  • Creating Github repository

Setting up Docker

The first thing we need to do is create a folder to the repo, you can use the command bellow to create the folder and go to that directory:

mkdir learning_gocd learning_go

This command will create a new folder called learning_go. All changes we gonna do will be in this folder.

Once the folder is created we need to create two files: Dockerfile and docker-compose.yml. You can use the following command to create this file:

touch Dockerfiletouch docker-compose.yml

Once the file is created you'll need to open the folder inside your favorite text editor.

The Dockerfile content will be the following:

FROM golang:1.19.2-alpine3.16

That's the only line you'll gonna need on this file. It tells docker to download a image that is built based on alpine linux and runs go version 1.19.2.

Now we need to edit docker-compose.yml, that's the file content:

version: '3.9'services:  learning_go:    container_name: learning_go    build: .    volumes:      - ./:/go/src/app    ports:      - "3000:3000"    working_dir: /go/src/app    tty: true

Once everything is done you need to run the following command:

docker-compose up -d

If everything is ok you should see something like this:

Image description

If you want to execute commands inside the docker container you must run the following command:

docker exec -it learning_go sh

Creating hello world

Now that docker is running as expected we need to create a go file to test it, so we gonna create a file called main.go in the root path of the application and set this content:

package mainimport "fmt"func main() {    fmt.Println("hello world!")}

This code is only a basic hello world example. To execute this code you need to run the following command inside the docker container:

go run main.go

You should see the following output:

Image description

Creating Github repository

Now that everything is working we need to store the code in a github repository. To do so you just need to access this url and set the repo name such as the image bellow

Image description

Once it's done you just need to follow the instruction that github provides:

Image description

Conclusion

Well guys, that's it! Thanks for your attention! Let me know if there is any questions that I can help. You can find this project repository here


Original Link: https://dev.to/augusto_queirantes/learning-go-creating-the-environment-using-docker-part-1-id2

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To