網站首頁 編程語言 正文
搭建docke-cli的調試環境
在搭建docker-cli的調試環境時,踩了些坑,這里總結了一個比較順利的方式,供大家參考。
我使用的是VMware16.2.4安裝得centos7.9.2009的操作系統,編譯器用的VScode,go的版本為1.18, docker-cli的版本為1.20.10。
1. 安裝go開發環境
這里安裝go開發環境使用的是g 版本管理工具,具體的安裝過程請參考:https://github.com/voidint/g 。
安裝完之后,切換為1.18 版本。
2. 修改部分go 環境變量
關閉了go mod ,因為docker-cli項目,沒有使用go mod管理
修改GO_PROXY為七牛云的
GOPATH 保持默認的不變,如果要修改也可以,之后后面創建目錄的時候,也要一并修改。
go env -w GO111MODULE="off"
go env -w GOPROXY="https://goproxy.cn,direct"
3. 創建目錄
在GOPATH創建如下的目錄:
mkdir -p /root/go/src/github.com/docker # 如果GOPATH有修改,此處路徑也要做相應修改
4.下載代碼
在GOPATH中下載代碼,并切換至目標分支
cd /root/go/src/github.com/docker
git clone https://github.com/docker/cli.git
cd cli
git checkout -b origin/20.10 remotes/origin/20.10
5. 配置VScode
通過 SSH remote 插件打開代碼以后(相信如果你能查到這個文檔,自然會使用該插件)
1.先自動創建 launch.json
2.并將 launch.json內容修改為如下:
其中 program字段,設置為docker.go 文件的路徑。
args字段,可以執行調整為自己感興趣的docker命令,不必含有docker,直接填寫根命令就行。
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "/root/go/src/github.com/docker/cli/cmd/docker/docker.go",
"env": {},
"args": ["ps","-a"]
}
]
}
點擊開始調試
如果出現如下的信息,則說明成功了。
原文鏈接:https://blog.csdn.net/hg_zhh/article/details/127797712
相關推薦
- 2022-05-27 ASP.NET?Core中使用Swagger_實用技巧
- 2022-02-18 解決上傳apk文件后為vnd.android.package-archive格式的問題
- 2022-06-07 Pytorch上下采樣函數之F.interpolate數組采樣操作詳解_python
- 2022-05-02 go語言中值類型和指針類型的深入理解_Golang
- 2022-07-13 查看工具設置的編碼 sys.getdefaultencoding()
- 2022-11-25 ASP.NET?MVC使用異步Action的方法_實用技巧
- 2022-06-15 django?settings.py配置文件的詳細介紹_python
- 2022-05-16 .Net?MVC將Controller數據傳遞到View_實用技巧
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支