7-深入练习Dockerfile
创建一个json-server 镜像
首先创建一个 json-server 文件夹
mkdir json-server
-
在json-server文件夹下创建Dockerfile
FROM node:10.15.0 RUN npm install -g json-server
-
构建镜像
docker build -t json-server .
创建一个api服务的镜像
首先创建一个 api 文件夹
mkdir api
-
在api文件夹内创建一个users.json文件
{"users": [{"id": 1,"username": "vincent","password": "123456","role": "admin"},{"id": 2,"username": "bob","password": "456789","role": "admin"},{"id": 3,"username": "lynn","password": "000000","role": "regular"}] }
-
在api文件夹内创建Dockerfile
FROM json-server:latest COPY users.json / WORKDIR / EXPOSE 4200 CMD ["json-server", "--port=4200", "--watch", "--host=0.0.0.0", "users.json"]
-
构建镜像
docker build -t api .
创建容器运行
-
创建容器
docker run -d -p 4200:4200 --name api api:latest
-d 为后台运行
-
虚拟机内测试
查看虚拟机ip地址
ip addr
通过curl测试GET,返回结果则正常
curl http://192.168.2.139:4200/users
-
宿主机器测试
此时需要修改Vagrantfile文件
config.vm.network "public_network" # 这一行反注释
然后重启,并且进入虚拟机查看ip地址,然后在宿主机浏览器访问api
也可以通过curl测试