前言
依赖环境为centos7
一、 安装与配置
安装依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
配置镜像
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
或配置阿里云镜像
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
查看所有docker版本
yum list docker-ce --showduplicates | sort -r
安装docker-ce
sudo yum install docker-ce
启动docker-ce
sudo systemctl start docker # 启动docker
sudo systemctl enable docker # 允许自动启动docker服务
部署Vue前端页面
此配置的项目目录结构如下
.
├── Dockerfile
├── Dockerfile.node
├── README.md
├── build
│ ├── build.js
│ ├── check-versions.js
│ ├── logo.png
│ ├── utils.js
│ ├── vue-loader.conf.js
│ ├── webpack.base.conf.js
│ ├── webpack.dev.conf.js
│ ├── webpack.prod.conf.js
│ └── webpack.test.conf.js
├── cert
│ ├── symantec.key
│ └── symantec.pem
├── config
│ ├── dev.env.js
│ ├── index.js
│ ├── prod.env.js
│ └── test.env.js
├── dist
├── docker-compose.yml
├── docker.sh
├── ecosystem.config.js
├── index.html
├── nginx
│ ├── nginx.conf
│ ├── web.conf
│ └── webssl.conf
├── package-lock.json
├── package.json
├── server
│ ├── app.js
│ ├── config
│ │ ├── index.js
│ │ ├── private.pem
│ │ └── public.pem
│ ├── middlewares
│ │ └── errorhandler.js
│ ├── models
│ │ ├── base_model.js
│ │ ├── keyword.js
│ │ ├── menu.js
│ │ ├── page.js
│ │ ├── user.js
│ │ └── uuid.js
│ ├── modules
│ │ ├── keyword.js
│ │ ├── menu.js
│ │ ├── page.js
│ │ ├── user.js
│ │ └── uuid.js
│ ├── router
│ │ └── index.js
│ └── utils
│ ├── error.js
│ ├── index.js
│ ├── log.js
│ └── token.js
├── src
│ ├── App.vue
│ ├── api
│ │ ├── index.js
│ │ ├── menu.js
│ │ ├── page.js
│ │ └── user.js
│ ├── assets
│ │ ├── css
│ │ │ ├── common.css
│ │ │ └── variable.scss
│ │ ├── img
│ │ │ ├── components.svg
│ │ │ ├── css-framework.svg
│ │ │ ├── get-started.svg
│ │ │ ├── logo.png
│ │ │ └── timg.jpg
│ │ └── logo.png
│ ├── components
│ │ ├── container.vue
│ │ ├── loading.vue
│ │ ├── login.vue
│ │ ├── menu.vue
│ │ └── register.vue
│ ├── config
│ │ └── index.js
│ ├── constant
│ │ ├── colors.js
│ │ ├── index.js
│ │ ├── status.js
│ │ └── userData.js
│ ├── filters
│ │ └── index.js
│ ├── main.js
│ ├── router
│ │ └── index.js
│ ├── utils
│ │ ├── common.js
│ │ ├── ua.js
│ │ ├── validator.js
│ │ └── web-worker.js
│ └── views
│ ├── detail.vue
│ ├── editor.vue
│ ├── index.vue
│ ├── information.vue
│ └── page.vue
├── static
│ ├── css
│ │ ├── font-awesome.css
│ │ └── font-awesome.min.css
│ ├── fonts
│ │ ├── FontAwesome.otf
│ │ ├── fontawesome-webfont.eot
│ │ ├── fontawesome-webfont.svg
│ │ ├── fontawesome-webfont.ttf
│ │ ├── fontawesome-webfont.woff
│ │ └── fontawesome-webfont.woff2
│ └── js
│ └── md5.js
├── test
│ ├── e2e
│ │ ├── custom-assertions
│ │ │ └── elementCount.js
│ │ ├── nightwatch.conf.js
│ │ ├── runner.js
│ │ └── specs
│ │ └── test.js
│ └── unit
│ ├── index.js
│ ├── karma.conf.js
│ └── specs
│ ├── index.spec.js
│ └── menu.spec.js
└── yarn.lock
使用http方式部署
编写web.conf
image.png- 编写Dockerfile
使用https方式部署
- 编写webssl.conf
- 编写Dockerfile
- 生成镜像
docker build -t front .
其中-t指定镜像名称,点则代表传递当前的工作目录
- 运行容器
docker run -d -p 80:80 front
部署mongo服务
-
获取mongo镜像
- name参数:指定容器名称
- network:指定容器网络
- p:指定容器端口映射,左边的27017为本地端口,右边的27017为docker容器内的端口
docker pull mongo
- 运行mongodb服务
docker run --name mongodb -p 27017:27017 -v /tmp/db:/data/db -d mongo:latest
- 修改镜像配置文件,以支持远程连接mongo服务
docker exec -it <mongodb容器id> bash
- 安装vim
apt-get update
apt-install vim
- 修改配置文件
vim /etc/mongod.conf.orig
# 注释bindIp或者ip改为0.0.0.0
-
为mongo添加用户
- 输入mongo,进入mongodb的环境
use admin
db.createUser(
{
user: "xxx",
pwd: passwordPrompt(), // or cleartext password
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
xxx为用户名,接着会提示password,输入密码,即可。
部署node服务
- 生成ecosystem.config.js
- 编写Dockerfile
- 生成镜像
- -f指定使用哪个Dockerfile
docker build -t end -f Dockerfile.node .
- 开启容器
docker run -d -p 3000:3000 --restart always end
网友评论