docker 的安装
https://www.docker.com/ 下载并安装最新版本docker
ubuntu 镜像
在 https://hub.docker.com/_/ubuntu 选择合适的镜像,我这里选择 ubuntu:22.04
docker pull ubuntu:22.04
查看本地镜像
使用以下命令来查看是否已安装
docker images
运行容器
运行前面下载好的镜像
docker run --privileged=true -it ubuntu:22.04
- --privileged是以获取系统权限的形式运行,
- -it是互动模式,跟本地的系统进行交互,调用的本地的终端
保存容器变更
在未退出来之前,另开一个窗口,看正在运营的容器ID:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7d8a66262ccc ubuntu:22.04 "/bin/bash" 3 minutes ago Up 3 minutes tender_liskov
保存这个容器
% docker commit 7d8a66262ccc ubuntu:u2204go
- docker commit :从容器创建一个新的镜像。
docker commit [选项] <容器ID或容器名> [<仓库名>[:<标签>]]
配置 ubuntu
ubuntu 中可能有些软件没有安装,可以通过下面方式安装
检查已安装的软件
# 在容器内尝试列出已安装的编辑器相关包
apt list --installed | grep -E "nano|vim|vi"
安装软件
# 更新软件包列表
apt update
# 安装 Nano
apt install -y nano
配置ubuntu的go开发环境
共享目录
在Docker->preference中添加目录共享,以便容器内可以访问到主机的目录。
上图这种方式 Apply & restart 后,新加的目录会自动消失,是因为 最前面系统已经默认共享了这个目录的父目录 /Users 。
重新进入环境
docker run --privileged=true -v /Users/fengbang/softwares:/softwares -it ubuntu:u2204go
-v, --volume=[] 给容器挂载存储卷,挂载到容器的某个目录
参考: Docker run 命令参数及使用
安装 go
下载地址: https://go.dev/dl/
删除旧版本go
cd /usr/local/
rm -rf ./go
Download the archive and extract it into /usr/local, creating a Go tree in /usr/local/go
cd /softwares/go
tar -C /usr/local/ -xzf ./go1.23.6.linux-amd64.tar.gz
Add /usr/local/go/bin to the PATH environment variable
nano /root/.bashrc
# 增加
export PATH=$PATH:/usr/local/go/bin
# 确保及时生效
source /root/.bashrc
注意,我们在docker中跑centos,默认是不加载 /etc/profile 的,需要在 /root/.bashrc 这个文件增加环境变量。
Verify that you've installed Go by opening a command prompt and typing the following command:
go version
go编译使用
docker run --privileged=true -v /Users/fengbang/mycodes:/home/mycodes -it ubuntu:u2204go