概览
容器
常用容器
docker安装 mysql
docker pull centos/mysql-57-centos7
docker run -di --name=mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=1989helz centos/mysql-57-centos7
docker安装 redis
docker安装 Jenkins
docker命令安装
docker run --name myJenkins -itd -p 18080:8080 -p 50000:50000 jenkins/jenkins:lts
# docker ps -a | docker rm <container_id> | docker log -f myJenkins 获取管理员密码
# 清华大学镜像仓库 jenkins > updates > update-center.json的地址复制到jenkins中的Plugin Manager > Update Site
# Upload Plugins 离线安装插件
# 安装插件 gitlab gitclient
# 制作自己的镜像
docker commit <container_id> myJenkins:1.0
# 保存自己容器中的数据
# 方法一
docker run --name myJenkins -itd -v /tmp:/tmp myJenkins:1.0
docker exec -it myJenkins cp -r /var/jenkins_home /tmp
# 方法二
docker cp <container_id>:/var/jenkins_home /tmp/
docker-compose.yml 配置文件
Jenkins权限管理:
安装插件 PAM | Matrix Authorization Strategy | Role-based | LDAP | gitlab authentication
docker安装 gitlab
【参考:https://github.com/sameersbn/docker-gitlab】
最佳实践
分类Merge Request : fix bug: new feature:
设置保护分支:具体项目 > 设置 > 仓库 > Protected Branches
docker安装 Rancher
【参考:https://rancher2.docs.rancher.cn/docs/overview/_index】
# rancher2.X
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:stable
自定义容器
push到某一个registry中自己的仓库
容器编排
使用Rancher创建 kubernetes
CI / CD
自动化构建、打包、测试、部署
通常与CI/CD流程相结合
项目 --> 工程化 --> 自动化 【专注代码编写及开发流程,但是难推动】
git使用
【 game: https://learngitbranching.js.org/ 】
git add .
# 从暂存区移除到工作区
git reset HEAD test2.txt
对于已经加入到git暂存区的文件,使用 git checkout -- b.txt 可以丢弃工作区的修改内容
打标签
git tag -d v1.0.0 删除本地tag
删除远程tag和远程分支
# git merge 和 git rebase在合并分支时的区别
# merge时合并冲突需要自己commit
git pull
# 自动合并冲突失败,手动合并 vim xxx.java
git add .
git commit -m 'conflict is fixed'
# rebase时合并冲突不需要commit,直接 git rebase --continue
git pull --rebase
# 自动合并冲突失败,手动合并 vim xxx.java
git add <conflict_file>
git rebase --continue