Docker API测试环境打包镜像(mac)

TODO:使用docker技术,打包API自动化测试环境镜像并上传至私有仓库
ENV:jenkins,python3.7



安装docker

mac相比windows安装更简单一些,只需一行命令就搞定啦。下载会有些慢,耐心等待。

brew cask install docker

如果没有brew,请参考:Mac 下安装 Homebrew

下载完成后,启动栏会多一个docker的图标,点击启动。

此时命令行输入docker info就可以看到docker的基本信息。


配置私有仓库

因为公司有单独的私有仓库,所以还需要进行配置才可以正常访问。
进入这个页面:Preferences - Daemon - Basic,开启 Experimental features,点击 “+”,添加私有仓库地址即可。docker会自动重启,启动成功后,即可正常访问。
在这里插入图片描述

制作镜像

有两种方法:

  • 通过dockerfile进行自动build;
  • 先拉取jenkins镜像,再手动安装python。

一般都是通过dockerfile来进行构建,由于环境依赖不多,先用比较low的办法吧。(其实是因为不会写dockerfile

1.拉取jenkins镜像:docker pull jenkins,默认是从官方仓库拉取最新镜像。拉取成功后可以通过docker images查看镜像。
在这里插入图片描述

2.运行jenkins容器

docker run --name myjenkins -p 8080:8080 -v /var/jenkins_home jenkins

–name:自定义命名
-p:端口映射,格式为:主机(宿主)端口:容器端口
-v:挂载目录
jenkins:基础镜像

运行后在web查看,浏览器输入127.0.0.1:8080即可进入jenkins页面,如果需要输入密钥,则根据提示进入容器对应路径查看密钥填入即可。

如何进入正在运行的容器?

打开一个新的iterm窗口,输入如下命令:

普通用户(仅访问):docker exec -it <container_id> bash
root用户(管理员):docker exec -it -u root <container_id> bash

进入容器命令行交互模式,进入对应路径查看密钥

jenkins@7b0dc4b05174:/$ cd /var/jenkins_home/secrets/
jenkins@7b0dc4b05174:~/secrets$ cat initialAdminPassword

拿到密钥,创建完管理员账号,正常访问~

下载python3.7

还需要安装python,首先查看所需要的版本:点击这里进入版本列表

进入jenkins容器命令交互模式,下载:

wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz

等待下载完成,进行解压:

tar xvf Python-3.7.0.tar.xz

进入Python-3.7.0目录,配置安装路径:

./configure --prefix=/usr/local/python3

执行编译安装:

make && make install

没能正常编译成功,心塞~~接下来写写遇到的问题。

遇到的问题

安装过程中遇到如下问题,报错日志:

configure: error: in `/usr/local/python3/Python-3.7.0': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details

是因为执行./configure --prefix=/usr/local/python3时编译缺少gcc环境,解决方法如下:

  • 配置debian源
  • 安装gcc,应该就能正常编译成功了吧。我在运维小哥哥的建议下,没安装gcc,直接apt-get install python3,安装成功。
  • 安装pip apt-get install python3-pip

更新镜像

语法
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
-a:提交人
-m:备注信息
-p:commit时,将容器暂停

实例

mbp:~ lanzy$ docker commit -a "lanzy" -m "api test env" 7b0dc4b05174 apitestenv:v1
sha256:4e72402053e88362efc783a67c5b2aac32c7f3ace95e0fb968ff7826f71c337b

此时再次查看现有镜像,出现刚才提交的镜像。
在这里插入图片描述

提交至私有仓库

docker push $path

$path:为私有仓库链接地址。


至此,新的镜像就做出来了~~

dockerfile的写法后续还会继续学习ing~~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值