1.Dockerfile编写:

# 指定镜像目标平台与镜像名 alpine表示基础镜像 第一层镜像
FROM --platform=$TARGETPLATFORM alpine
# 添加元数据到镜像
LABEL maintainer="Jrohy <euvkzx@gmail.com>"
# 编译时变量
ARG TARGETARCH
# 执行编译命令,使用 alpine 的 apk 包管理器安装tzdata libc6-compat gcompat基础镜像不缓存 第二层镜像
RUN apk add --no-cache tzdata libc6-compat gcompat
# 将应用相关文件从构建上下文复制到了当前镜像中,并且新建一个镜像层来存储,第三层镜像
COPY result/webssh_linux_$TARGETARCH /webssh
# 镜像入口点程序,通过镜像元数据的形式保存,不会新增镜像层
ENTRYPOINT ["/webssh"]
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

开源网页终端webssh容器镜像制作与使用_开发语言

2. 生成linux版本webssh并复制到docker文件夹

go env -w GOOS=linux 
go env -w GOARCH=amd64 
go build -o result/webssh_linux_amd64 .
  • 1.
  • 2.
  • 3.

  复制生成的webssh

开源网页终端webssh容器镜像制作与使用_vue_02

3.创建生成docker镜像配置

开源网页终端webssh容器镜像制作与使用_开发语言_03

 

4.生成运行docker镜像配置

绑定端口:

在修改选项中,点击 绑定端口

开源网页终端webssh容器镜像制作与使用_网页终端_04

 端口绑定成功

开源网页终端webssh容器镜像制作与使用_webssh_05

 5.生成与运行镜像:

生成:

开源网页终端webssh容器镜像制作与使用_webssh_06

开源网页终端webssh容器镜像制作与使用_webssh_07

运行:

开源网页终端webssh容器镜像制作与使用_开发语言_08

 

运行成功

开源网页终端webssh容器镜像制作与使用_vue_09

 

开源网页终端webssh容器镜像制作与使用_go_10

6.连接并测试

查IP

开源网页终端webssh容器镜像制作与使用_go_11

 登陆webssh

开源网页终端webssh容器镜像制作与使用_开发语言_12