Vagrant + docker搭建一套本地开发环境

1,443 阅读2分钟

Vagrant + docker搭建一套本地开发环境

一、安装Vagrant

1. 安装VirtualBox

Oracle VM 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名称] [仓库地址]

仓库地址可以填三种:

  1. 远程仓库链接

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)****

  1. 本地box文件

vagrant box add my_first_box D:/centos-7.0-x86_64.box

  1. 中央仓库名称

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

  1. 开始安装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

  1. 设置开机启动

systemctl start docker

systemctl enable docker

  1. 安装镜像
  • 安装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 nginx

    docker 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
    

    映射目录的时候有坑,具体打开下面链接查看

    基于Docker安装Nginx及其常用配置 - 码霸霸 (lupf.cn)

三、配置虚拟机端口映射

1. 打开VitualBox

打开vitualbox之后我们会看到我们创建的虚拟机

image.png

2. 点击设置按钮设置网络

image.png

image.png

配置完成之后,浏览器上输入 localhost:8888 就可以进入我们docker启动的jenkins里面去啦, 输入localhost就可以访问我们docker启动的nginx代理的目录