docker+Jenkins 发布一个叫springboot的到阿里云
===重新修订===
837 docker search nexus
838 docker pull sonatype/nexus3
839 mkdir /opt/nexus-data && chmod -R 777 /opt/nexus-data
840 cd /opt/nexus-data
841 ls
842 docker run -d -p 8081:8081 -p 8082:8082 -p 8083:8083 --name nexus3 -v /opt/nexus-data:/nexus-data --restart=always sonatype/nexus3
843 ls
844 docker ps -a
845 docker logs a40cee38c31d
==========docker commond===== 1)搜索某个镜像(这是搜索internet上的) docker search jenkins 2)docker images #查看镜像 3)删除无效的none镜像:docker rmi $(docker images -f "dangling=true" -q) 例子:docker rmi jenkinsci/blueocean 提示无法删除: Error response from daemon: conflict: unable to remove repository reference "jenkinsci/blueocean" (must force) - container 8fb349f1c43a is using its referenced image 6caf52eebf21 4)那就先删除用了该镜像的容器: 5)查看docker中的容器: 查看容器运行,包括未运行的 docker ps -a 尝试关闭容器 8fb349f1c43a 是容器ID docker stop 8fb349f1c43a 删除容器 docker rm -v 8fb349f1c43a 这时候查看,已经删除了容器;再接着删除 该镜像; 6)重新安装Jenkins 镜像:指定8020端口; docker run -p 8020:8020 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean docker run -u root --name jenkins -d -p 8020:8080 -p 50000:50000 -v /home/jenkins:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -v /usr/local/software/apache-maven-3.6.3:/usr/local/maven jenkinsci/blueocean ======scm 14服务器命令========= docker run -u root --name jenkins -d -p 8020:8080 -p 50000:50000 -v /home/jenkins:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -v /usr/local/software/maven:/usr/local/maven jenkinsci/blueocean ============== 进入docker内部: docker exec -it containerID /bin/bash 例子:docker exec -it 28bfba0d8e88 /bin/bash 得到java-home: [root@iZbp1davrpkdfc7ms990k0Z secrets]# docker exec -it 2f9d070b1867 /bin/bash bash-4.4# echo $JAVA_HOME /usr/lib/jvm/java-1.8-openjdk 得到maven-home mvn 的路径: /usr/local/software/apache-maven-3.6.3 /usr/local/software/maven/ ============== ssh-keygen -t rsa -C "hzb123@qq.com" ============nexus===== docker run -d -p 8081:8081 -p 8082:8082 -p 8083:8083 --name nexus3 -v /opt/nexus-data:/nexus-data --restart=always sonatype/nexus3 1)查看日志 docker logs a40cee38c31d https://maven.aliyun.com/nexus/content/groups/public/ http://47.9.2.61:8081/repository/maven-public /var/jenkins_home/workspace/bcd_springboot/pom.xml clean install 2)导出docker镜像: docker save -o /usr/local/software/docker/jenkinsci_blueocean.tar jenkinsci/blueocean 导入镜像: $ docker load -i /Users/houzhibin/Downloads/上传/jenkinsci_blueocean.tar docker load -i /usr/local/software/jenkinsci_blueocean.tar 3)本地maven路径 docker run -u root cd --name jenkins -d -p 8020:8080 -p 50000:50000 -v /Users/houzhibin/docker-soft/home/jenkins:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -v /Users/houzhibin/Documents/software/apache-maven-3.5.2:/usr/local/maven jenkinsci/blueocean ===ssh 的 远程路径 = /usr/local/sshdata/deploy/target 本地jar路径:/Users/houzhibin/docker-soft/home/jenkins target/web-0.0.1-SNAPSHOT.jar 远程要执行的命令: echo "transfer success" && sh /usr/local/sshdata/deploy/target/start.sh =====maven commond=== 1)docker 里maven 用的是 /usr/local/maven conf 里的setting;
启动容器:sudo docker start “容器ID”
如: docker start 2f9d070b1867
增订:
SC 配置新版Jenkins,新版里增加了nodeJS的支持;但配置nodeJS的时候需要选择自动安装,让Jenkins帮忙安装,有时会遇到网络问题;
docker run
-u root
--name jenkins
-d
-p 8020:8080
-p 50000:50000
-v /home/jenkins:/var/jenkins_home
-v /var/run/docker.sock:/var/run/docker.sock
-v /usr/local/maven:/usr/local/maven
-v /opt/nginx/html:/usr/share/nginx/html
jenkinsci/blueocean
进入Jenkins docker容器命令:docker exec -it jenkins /bin/bash
shell脚本配置:
注意这个copy命令,不询问,直接覆盖的写法:cp -rf /var/jenkins_home/workspace/sc-ui/dist/* /usr/share/nginx/html/