mirror of
https://github.com/xiaoqidun/goenv.git
synced 2025-07-14 02:43:50 +08:00
Compare commits
125 Commits
7ee98ef20c
...
main
Author | SHA1 | Date | |
---|---|---|---|
fa28f43699 | |||
d7f31ae5ab | |||
0788a405ed | |||
73b7995128 | |||
3a386feeec | |||
8b42279af8 | |||
68fa94a8c6 | |||
7ca2c9ba9e | |||
9c7e885d02 | |||
87b9d8a4a6 | |||
929bf8d314 | |||
7e6396a7a1 | |||
eb130c2a28 | |||
7722f887a8 | |||
7e366ab17e | |||
e7736b345f | |||
5adf05c471 | |||
29ef0d38de | |||
318f5681f4 | |||
8ccb320a78 | |||
cf514fbbb7 | |||
6210f6b195 | |||
67c96bff22 | |||
2f4abe9768 | |||
e764bc1608 | |||
a1f938c872 | |||
2f577fda9e | |||
ae2335889f | |||
5f65de79bb | |||
6a695572f6 | |||
37567594e4 | |||
cb354523ac | |||
573a8a29b1 | |||
902a8f847f | |||
55cba6a372 | |||
c8f32acd2e | |||
3742865087 | |||
47bc5ab50c | |||
b70271d8a6 | |||
3d2d480d19 | |||
e638e215cd | |||
2045a1013a | |||
f42201d3a2 | |||
293c42f6d4 | |||
367aa982b1 | |||
3bc3e7bad7 | |||
87cf150e7b | |||
ce70d9b7fb | |||
5db552bc1f | |||
3f3874ce9e | |||
8f4b4797b9 | |||
82fb7da3ed | |||
ba1e42cc94 | |||
0ef1dc7735 | |||
47413e5e66 | |||
e465b02956 | |||
24587098e1 | |||
99bc4ecb6a | |||
94294c1af4 | |||
bb526937ed | |||
80862d685c | |||
beca7e7d40 | |||
3e0434781a | |||
3fdcce75de | |||
a245c26afa | |||
73793848ce | |||
0510c3dda1 | |||
4489e44c03 | |||
070c4c9fc8 | |||
7774e19f99 | |||
b07004642f | |||
4c8e5d06b6 | |||
18c351fd6d | |||
2ccd60b65c | |||
d69946bf60 | |||
dea6d483a9 | |||
e6ec4965da | |||
da8ca38c99 | |||
d3265d35a5 | |||
6f8569a01d | |||
4ddf0bd22a | |||
42b144528e | |||
4383fc8c18 | |||
e68a039e7d | |||
b416798984 | |||
511e47ab75 | |||
292daa8a0c | |||
2389ae64d7 | |||
234ff38cee | |||
2d4e4dfda1 | |||
a726b9a3c7 | |||
e7065f5328 | |||
bd5a38cfe3 | |||
5809650ed1 | |||
c9decf8d29 | |||
3447cbfcd1 | |||
4fd6919cc3 | |||
72a97d3458 | |||
d5b20d80db | |||
0f11710618 | |||
57e104e9dc | |||
19a1e20502 | |||
c37a7149c1 | |||
e94bf990af | |||
aa5d525ded | |||
8a1aac3f9e | |||
fa5ebe0051 | |||
6f6ced265e | |||
2d8ad89a8d | |||
0a89869012 | |||
a7326a8222 | |||
eef0924e5e | |||
b9976086a1 | |||
65cfce1285 | |||
394e535201 | |||
9b8967a0aa | |||
ddc1141006 | |||
aed473bdc4 | |||
5cb86b0d45 | |||
609710a0eb | |||
d1284d6df6 | |||
29e8ec4a2e | |||
3a9de5543b | |||
fb4ed045b3 | |||
183014096f |
32
.drone.yml
32
.drone.yml
@@ -1,21 +1,37 @@
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: default
|
||||
|
||||
node:
|
||||
region: cn
|
||||
steps:
|
||||
- name: build
|
||||
pull: if-not-exists
|
||||
image: alpine
|
||||
image: debian
|
||||
commands:
|
||||
- wget -q -T 180 https://dl.google.com/android/repository/android-ndk-r21b-linux-x86_64.zip
|
||||
- unzip -q android-ndk-r21b-linux-x86_64.zip
|
||||
- name: docker
|
||||
- sed -i "s|deb.debian.org|mirrors.ustc.edu.cn|g" /etc/apt/sources.list.d/debian.sources
|
||||
- apt-get update && apt-get install -y wget unzip && rm -rf /var/lib/apt/lists/*
|
||||
- wget -q -T 180 -4 https://dl.google.com/android/repository/android-ndk-r29-beta2-linux.zip
|
||||
- unzip -q android-ndk-r29-beta2-linux.zip
|
||||
- rm -f android-ndk-r29-beta2-linux.zip
|
||||
- name: docker-cn
|
||||
pull: if-not-exists
|
||||
image: plugins/docker
|
||||
settings:
|
||||
repo: xiaoqidun/goenv
|
||||
repo: ccr.ccs.tencentyun.com/xiaoqidun/goenv
|
||||
registry: ccr.ccs.tencentyun.com
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
dockerfile: Dockerfile
|
||||
dockerfile: DockerfileCN
|
||||
- name: docker-hk
|
||||
pull: if-not-exists
|
||||
image: plugins/docker
|
||||
settings:
|
||||
repo: hkccr.ccs.tencentyun.com/xiaoqidun/goenv
|
||||
registry: hkccr.ccs.tencentyun.com
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
dockerfile: DockerfileHK
|
||||
|
16
Dockerfile
16
Dockerfile
@@ -1,16 +0,0 @@
|
||||
# 基础镜像
|
||||
FROM golang:buster
|
||||
|
||||
# 作者信息
|
||||
LABEL MAINTAINER="xiaoqidun@gmail.com"
|
||||
|
||||
# 安装编译工具链
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
build-essential mingw-w64
|
||||
|
||||
# 安装android ndk
|
||||
COPY android-ndk-r21b /usr/local/android-ndk-r21b
|
||||
|
||||
# 环境变量
|
||||
ENV PATH=$PATH:/usr/local/android-ndk-r21b/toolchains/llvm/prebuilt/linux-x86_64/bin
|
22
DockerfileCN
Normal file
22
DockerfileCN
Normal file
@@ -0,0 +1,22 @@
|
||||
# 基础镜像
|
||||
FROM golang:1.24.5-bookworm
|
||||
|
||||
# 作者信息
|
||||
LABEL authors="xiaoqidun"
|
||||
|
||||
# 使用中国软件源
|
||||
RUN sed -i "s|deb.debian.org|mirrors.ustc.edu.cn|g" /etc/apt/sources.list.d/debian.sources
|
||||
|
||||
# 安装编译工具链
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
build-essential mingw-w64 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# 安装android ndk
|
||||
COPY android-ndk-r29-beta2 /usr/local/android-ndk-r29-beta2
|
||||
|
||||
# 环境变量
|
||||
ENV PATH=$PATH:/usr/local/android-ndk-r29-beta2/toolchains/llvm/prebuilt/linux-x86_64/bin
|
||||
ENV GO111MODULE=on
|
||||
ENV GOPROXY=https://goproxy.cn,direct
|
19
DockerfileHK
Normal file
19
DockerfileHK
Normal file
@@ -0,0 +1,19 @@
|
||||
# 基础镜像
|
||||
FROM golang:1.24.5-bookworm
|
||||
|
||||
# 作者信息
|
||||
LABEL authors="xiaoqidun"
|
||||
|
||||
# 安装编译工具链
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
build-essential mingw-w64 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# 安装android ndk
|
||||
COPY android-ndk-r29-beta2 /usr/local/android-ndk-r29-beta2
|
||||
|
||||
# 环境变量
|
||||
ENV PATH=$PATH:/usr/local/android-ndk-r29-beta2/toolchains/llvm/prebuilt/linux-x86_64/bin
|
||||
ENV GO111MODULE=on
|
||||
ENV GOPROXY=https://goproxy.aite.xyz,direct
|
27
README.md
27
README.md
@@ -5,12 +5,12 @@ golang environment
|
||||
|
||||
## 拉取镜像
|
||||
```
|
||||
docker pull xiaoqidun/goenv:latest
|
||||
docker pull ccr.ccs.tencentyun.com/xiaoqidun/goenv:latest
|
||||
```
|
||||
|
||||
## 运行镜像
|
||||
```
|
||||
docker run -it --rm xiaoqidun/goenv
|
||||
docker run -it --rm ccr.ccs.tencentyun.com/xiaoqidun/goenv
|
||||
```
|
||||
|
||||
# 编译项目
|
||||
@@ -18,29 +18,28 @@ docker run -it --rm xiaoqidun/goenv
|
||||
## 将项目文件映射到容器内部
|
||||
|
||||
### linux - bash
|
||||
|
||||
```shell
|
||||
docker run --rm -it -v $(pwd):/go/src/app -w /go/src/app xiaoqidun/goenv
|
||||
docker run --rm -it -v $(pwd):/usr/src/app -w /usr/src/app ccr.ccs.tencentyun.com/xiaoqidun/goenv
|
||||
```
|
||||
|
||||
### windows - cmd
|
||||
```bat
|
||||
docker run --rm -it -v %cd%:/go/src/app -w /go/src/app xiaoqidun/goenv
|
||||
docker run --rm -it -v %cd%:/usr/src/app -w /usr/src/app ccr.ccs.tencentyun.com/xiaoqidun/goenv
|
||||
```
|
||||
|
||||
### windows - powershell
|
||||
```powershell
|
||||
docker run --rm -it -v "${pwd}:/go/src/app" -w /go/src/app xiaoqidun/goenv
|
||||
docker run --rm -it -v "${pwd}:/usr/src/app" -w /usr/src/app ccr.ccs.tencentyun.com/xiaoqidun/goenv
|
||||
```
|
||||
|
||||
## 在容器内执行命令进行编译
|
||||
|
||||
### 编译windows程序
|
||||
### 编译linux程序
|
||||
```shell
|
||||
export GOOS=windows
|
||||
export GOOS=linux
|
||||
export GOARCH=amd64
|
||||
export CGO_ENABLED=0
|
||||
go build -o main_windows_amd64.exe main.go
|
||||
go build -o main_linux_amd64 main.go
|
||||
```
|
||||
|
||||
### 编译android程序
|
||||
@@ -52,6 +51,14 @@ export CGO_ENABLED=1
|
||||
go build -o main_android_arm64 main.go
|
||||
```
|
||||
|
||||
### 编译windows程序
|
||||
```shell
|
||||
export GOOS=windows
|
||||
export GOARCH=amd64
|
||||
export CGO_ENABLED=0
|
||||
go build -o main_windows_amd64.exe main.go
|
||||
```
|
||||
|
||||
# 编译说明
|
||||
|
||||
## GOOS
|
||||
@@ -61,10 +68,8 @@ go build -o main_android_arm64 main.go
|
||||
> 用于标识编译的目标系统架构
|
||||
|
||||
## CGO_ENABLED
|
||||
|
||||
- 0 静态编译,禁用CGO,适用于android和darwin(apple)外的目标操作系统
|
||||
- 1 动态编译,使用CGO,适用于依靠外部工具链才能完成编译的目标操作系统
|
||||
|
||||
## 动态编译
|
||||
|
||||
- 动态编译必须设置CC变量,指定C编译器可执行文件路径或者在PATH变量内的可执行C编译器名称
|
||||
|
Reference in New Issue
Block a user