docker安装与container基本使用

安装

Homebrew 的 Cask 已经支持 Docker for Mac, mac用户狂喜

bash 复制代码
brew install --cask --appdir=/Applications docker

其他入门用法可参考 Docker Hello World- 菜鸟教程 或网上自行搜索博客学习。本文主要记录我运行go-zero-mall用到的一些注意点。当然,gonivinck项目书写的dockerfile格式也可以为我们平时日常开发做参考。

打包容器

在学习这个项目 go-zero-mall 时,需要打包一个容器, 好在它的docker file都写好了 https://github.com/nivin-studio/gonivinck.

文件修改

不过需要修改一下几处地方:

.env环境的代码路径改一下

由于我是mac用户,这里也需要修改下

Golang 文件夹的dockerfile也要改一下,不然依赖下不下来. 改为 goctl@v1.5.0 版本

打包镜像

bash 复制代码
docker-compose up -d

运行代码

切换到go-zero-mall代码路径下,进行golang容器环境.

bash 复制代码
docker exec -it gonivinck-golang-1 bash

容器名称可以在docker desktop查看,也可以通过执行命令查看,可能不通版本的机子会不太一样

安装相关依赖(注意是在进入容器环境的终端会话下,也就是你刚刚执行docker exec -it gonivinck-golang-1 bash的terminal)

bash 复制代码
./nivin install

然后启动四个服务。

bash 复制代码
./nivin start rpc order
./nivin start api order
./nivin start rpc pay
./nivin start api pay
./nivin start rpc product
./nivin start api product
./nivin start rpc user
./nivin start api user

新建数据表

为了运行正常,我们还得在mysql容器中创建一个mall 数据库和4张数据表。先让终端进入mysql容器

bash 复制代码
docker exec -it gonivinck-mysql-1 bash

登录一下

bash 复制代码
mysql -u root -p

输入密码,密码在构建容器时的.env文件设置了

登录后新建数据库: create dababase mall,然后运行services四个服务下的model文件夹下的sql文件

api验证

使用postman,导入go-zero-mall仓库下的 gomall.postman_collection.json 文件,即可调用相关接口

相关推荐
李白你好6 小时前
AI Agent 架构的自动化渗透测试工具
运维·人工智能·自动化
做个文艺程序员7 小时前
第1篇:K8s 核心概念精讲:Pod、Deployment、Service 与 Namespace——Java 开发者快速上手指南
java·云原生·容器·kubernetes·容器编排
一勺菠萝丶7 小时前
Docker Desktop 启动后容器自动启动怎么办?如何关闭容器自启动
运维·docker·容器
ylscode8 小时前
Comodo防火墙曝致命零日漏洞:单个IPv6数据包即可触发Windows蓝屏死机
运维·网络·windows·安全·安全威胁分析
实在智能RPA8 小时前
药企GMP合规自动化破局:实在Agent的功能完整度评估与落地实践
运维·人工智能·ai·自动化
Shota Kishi9 小时前
SLV 新增 allnodes-jito 支持:Solana 验证者多客户端运维与 AI agent 自动化解析
运维·自动化·区块链
hj28625110 小时前
linux下一步学习内容
linux·运维
睡不醒男孩03082310 小时前
数据库高可用运维实操指南:基于CLup的PostgreSQL生产环境自动化管理
运维·数据库·postgresql
V搜xhliang024611 小时前
临床科研新范式:从选题到投稿,AI智能体如何接管全流程?
运维·数据结构·人工智能·算法·microsoft·数据挖掘·自动化
tudoSearcher11 小时前
日志、指标、链路追踪:可观测性三支柱深度解析
运维·服务器·网络·prometheus