使用 Docker 构建 node.js 项目。
基于 Docker , 可以把开发环境,测试环境,一键部署到任何一台机器上,只要该机器安装了 Docker。
可以说 有了 Docker 就有了一切 。
Docker 是一种虚拟机技术,比传统虚拟机更加简单,轻量。
docker pull <image-name>:<tag>docker imagesdocker rmi <image-id>docker push <username>/<repository>:<tag>,要先注册 hub.docker.com如果 docker images 出现 REPOSITORY 是 <none> 的情况,可以先运行 docker image prune 删除。
所有的 id 不需要完全输入,只需要输入前几位能够区分开就可以。
docker run -p xxxx:xxx -v=hostPath:containerPath -d --name <container-name><image-name>
docker ps,加 -a 显示隐藏的容器
docker stop <container-id>
docker rm <container-id> ,加 -f 是强制删除
IP 地址 docker inspect <container-id>
docker logs <container-id>
docker exec -it <container-id> /bin/sh
执行 docker pull nginx,可以看到没有输入版本,默认下载 latest 的。
执行 docker images,查看所有镜像。
执行 docker run -p 81:80 -d --name myNginx nginx ,会返回一个 id。
执行 docker ps 查看容器列表。
访问 http://localhost:81/ ,可以看到 nginx 的默认页,说明容器已经启动成功了。
执行 docker inspect 9,可以看到容器信息,非常的多。
执行 docker logs 9,可以看到容器日志,方便排查问题。
执行 docker exec -it 9 /bin/sh,可以进入到容器的控制台。
执行 exit 就可以退出控制台。
执行 docker stop 9 ,就可以停止容器。
执行 docker ps -a 可以看到刚才被停止的容器依然存在。
执行 docker rm 9 可以删除容器,这次再查看就不在列表里了。
在启动容器的时候加上参数 -v xxxx:xxx,冒号前面是宿主机(本地)的地址,冒号后面是虚拟机的地址
docker run -p 81:80 -d -v D:/test:/usr/share/nginx/html --name myNginx nginx这个时候再访问 nginx ,就映射到我们本地的文件上面来了。