Vagrant + docker搭建一套本地开发环境
一、安装Vagrant
1. 安装VirtualBox
2. 安装 Vagrant
Vagrant by HashiCorp (vagrantup.com)
3. 配置 Vagrant
对于windows系统Vagrant 默认镜像的下载位置在 C:\Users\用户名.vagrant.d
如果想放在其他位置,可以通过设置环境变量可以更改
VAGRANT_HOME | E:\VirtualBox.vagrant.d
4. 下载镜像
Discover Vagrant Boxes - Vagrant Cloud (vagrantup.com)
搜索 centos 下载 centos/7
也可以通过命令直接下载:
vagrant box add [自定义你的box名称] [仓库地址]
仓库地址可以填三种:
- 远程仓库链接
vagrant box add my_first_box [https://](https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box)****
- 本地box文件
vagrant box add my_first_box D:/centos-7.0-x86_64.box
- 中央仓库名称
vagrant box add my_first_box hashicorp/precise64
添加完了之后可以用 vagrant box list 查看已安装的镜像
使用 vagrant box remove your_box_name 删除已安装的镜像
5. 初始化项目
打开终端,cd到一个你要创建虚拟机的文件夹下面,执行如下命令
vagrant init centos/7
vagrant up
vagrant ssh
更改ssh登入密码 passwd root
默认的密码是 vagrant
6. 使用root登录
Vagrant 使用 root 账号登录 | 温欣爸比的博客 (wxnacy.com)
二、安装docker
1. 安装前操作
更新 yum 包
yum -y update
yum -y update:升级所有包同时也升级软件和系统内核
yum -y upgrade:只升级所有包,不升级软件和系统内核
卸载旧版本:
yum remove docker docker-common docker-selinux docker-engine
- 开始安装docker
安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
设置 yum 源
cd 到 /etc/yum.repos.d/ 更改 CentOS-Base.repo sudo vi CentOS-Base.repo
内容参考 mirrors.163.com/.help/CentO…
sudo yum clean all
sudo yum makecache
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo <http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo>
yum list docker-ce --showduplicates | sort -r
sudo yum -y install docker-ce-18.03.1.ce
- 设置开机启动
systemctl start docker
systemctl enable docker
- 安装镜像
-
安装jenkins
前往 Docker Hub 搜索需要的镜像
docker pull jenkins/jenkins
启动镜像 确保创建了 /u01/jenkins_home/ 目录
注意: cd /u01
查看jenkins_home拥有者权限 ls -la jenkins_home
下更改目录的拥有者 sudo chown -R 1000 jenkins_home
docker run --name jenkins -d -p 8080:8080 -p 50000:50000 -v /u01/jenkins_home:/var/jenkins_home jenkins/jenkins此命令可以进入容器内的终端
docker exec -it jenkins /bin/bash -
安装nginx
同理,使用docker安装nginx方式也基本一样
docker pull nginxdocker run -p 80:80 --name nginx --restart=always \ -v /u01/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /u01/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /u01/jenkins_home/workspace:/html \ -v /u01/nginx/logs:/var/log/nginx \ -d nginx映射目录的时候有坑,具体打开下面链接查看
三、配置虚拟机端口映射
1. 打开VitualBox
打开vitualbox之后我们会看到我们创建的虚拟机
2. 点击设置按钮设置网络
配置完成之后,浏览器上输入 localhost:8888 就可以进入我们docker启动的jenkins里面去啦, 输入localhost就可以访问我们docker启动的nginx代理的目录