Home >Backend Development >Golang >golang linux deployment
This article will introduce how to deploy Go language applications on Linux systems.
The Go language official website provides an installation package for Linux. You can download and install the Go environment through the following command:
wget https://golang.org/dl/go1.15.7.linux-amd64.tar.gz tar -C /usr/local -xzf go1.15.7.linux-amd64.tar.gz
Installation Finally, you need to add the environment variable to PATH in order to use Go related commands in the command line:
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc source ~/.bashrc
Verify whether Go is successfully installed through the following command:
go version
Go applications need to be compiled into executable files before deployment. You can use the following command to compile the code:
go build -o app main.go
where app
is the name of the executable file generated after compilation, and main.go
is the entry file of the application .
Upload the compiled application file to the Linux server and start the application through the following command:
./app
Among them, app
is the executable file name. After successful startup, the application will run in the background and listen to the specified port, waiting for user requests.
If you want the application to run in the background, you can use the following command:
nohup ./app > log.out 2>&1 &
where log.out
is the output log file name of the application. In this way, the application will run in the background and the output log will be written to log.out
.
In order to improve the performance and reliability of the application, we can consider deploying the application with the help of Nginx reverse proxy.
First, you need to add the following content to the Nginx configuration file:
server { listen 80; server_name example.com; location / { proxy_pass http://localhost:8080; // 8080为应用程序监听的端口号 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }
Among them, example.com
is the domain name or server IP address of the application. In this way, when a user accesses http://example.com
, Nginx will forward the request to the local port 8080.
Next, start the Nginx service and access it using a browser.
systemctl start nginx
At this point, we have completed the process of deploying Go language applications on Linux systems. Through Nginx reverse proxy, the reliability and performance of the application can be effectively improved.
The above is the detailed content of golang linux deployment. For more information, please follow other related articles on the PHP Chinese website!