目录权限没有设置 3、构建时超时
1、先配置好Docker阿里云加速,可以使用阿里云容器处事 (可本身在阿里云申请,要不然安置对象直接很慢)
注意:https://XXXX.mirror.aliyuncs.com为阿里云加速处事分配地点
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-‘EOF‘ { "registry-mirrors": ["https://XXXX.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
2、安置Docker
使用脚本自动安置
$ curl -fsSL get.docker.com -o get-docker.sh $ sudo sh get-docker.sh --mirror Aliyun
3、安置JenKins
创建jenkins事情目录
mkdir /usr/local/jenkins
拉取jenkins镜像
docker pull jenkins/jenkins:lts
改削jenkins目录和docker目录权限,这里1000是容器中Jenkins 的用户 uid
chown -R 1000:1000 /usr/local/jenkins sudo chown -R 1000:1000 /var/run/docker.sock docker run -itd -p 8080:8080 -p 50000:50000 --name jenkins --privileged=true -v /usr/local/jenkins:/var/jenkins_home -v /usr/bin/docker:/bin/docker -v /var/run/docker.sock:/var/run/docker.sock jenkins/jenkins:lts
参数解释:
-p 8080:8080 -p 50000:50000 --映射jenkins端口
--name jenkins --容器名称本身定名
privileged=true --授予容器打点员权限
-v /usr/local/jenkins:/var/jenkins_home --映射jenkins目录
-v /usr/bin/docker:/bin/docker --映射docke目录 到时候需要在容器里执行docker命令
-v /var/run/docker.sock:/var/run/docker.sock --映射docker执行命令 到时候需要容器里执行docker命令。
配置JenKins
检察容器启动告成后,我们可以通过地点+端口访谒刚刚运行的Jenkins
例如地点:8080
安置告成访谒后会如下图所示。
提示初度访谒需要暗码,我们通过刚刚映射的Jenkins目录里检察这个默认暗码。
默认暗码路径:/usr/local/jenkins/secrets/ (注意前面usr/local/jenkins路径就是刚刚本身映射的目录)
安置完成后创建一个用户名和暗码,即可完成安置进入首页。
3. 创建项目
1、源代码编译颁布工程
源代码颁布工程即将源代码提交到git处事器,jenkins通过git拉取最新的源代码,并通过Dockerfile里的配置进行编译颁布过程。然后通过Docker构建此镜像并运行到容器。
创建一个.Net Core Web项目。
创建项目的时候可以选择启用Docker撑持。
默认的Dockerfile是有帮我们进行代码编译并颁布行动的。所以默认的Dockerfile文件是适合和代码一起提交随处事器然后使用Docker进行构建镜像。
项目创建完成后随代码一起提交到git处事器。(svn等也都可以)
git项目目录,注意将Dockerfile复制到根目录。由于到时候构建镜像的时候就是从根目录执行的。
2、已编译的Release工程
已编译的Release工程,此种方法适合git或svn在局域网的;又不但愿源代码不袒露到外网的需要。此种方法是将项目工程进行进行颁布打包操纵。例如java常见的打包成一个war包文件。.Net 就是生成对应的DLL 文件。
项目在颁布之前我们对项目的Dockerfile文件属性做个变动,以便在颁布时将此文件复制到颁布时的目录。
将颁布文件颁布到本身的git(或svn)目录,如下图所示的,必然要包罗Dockerfile文件。颁布后的文件,可以按照本身需要将没有更新DLL或者appsetting.json等文件剔除去。只保存本次要更新的文件即可。
改削Dockerfile文件,因为默认的Dockerfile文件是包罗编译颁布的命令,所以这里要将这些相关命令操纵删除去;保存如下命令配置即可。
生存然后提交到所有文件到git处事器。
提交后的git目录。
建议:无论是代码编译颁布工程还是已编译的Release工程,第一次使用Docker部署时最好先本身手动将这些文件拷贝随处事器,并手动构建东西并运行容器看是否告成;能否访谒网站。也就是先不用Jenkins将这些流程本身手动走一遍,确保一些目录包孕Dockerfile等都是配置正确的。
如只想将颁布文件提交到git,可以下载git桌面版本,在本地新建项目,同步到git线上即可;
4. 创建JenKins任务
项目工程创建完成并提交到git处事器后,开始在Jenkins里面创建任务。
输入项目描述,源代码打点选择本身对应的即可。
我这里选择的git。第一次添加项目时需要添加一种授权方法点击右边添加按钮即可。
选择添加授权方法 常用的就是用户名加暗码或者SSH方法。
下一步设置构建环境
设置触发器,这里主要是设置自动触发条件,有按时构建、长途触发构建、轮询SCM。
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32290.html