一个普通的前端项目docker化过程中遇到的几个问题以及解决方法
1. docker+nginx部署前端项目时无法调取后台接口
#是因为在容器中 server_name 不能使用localhost 要改成固定ip地址
server {
listen 80;
server_name 10.xx.x.xxx;
...
2. docker在push本地镜像到私仓的时候 遇到的Error response from daemon
问题
#windows环境下 直接改一下hosts
/System32/drivers/etc/hosts 最后一行添加 IP和域名
#例如 192.168.0.1 www.baidu.com
3. vscode本地操作远端docker步骤
- 安装docker插件
- 远端开启remote api 具体操作为修改 /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --exec-opt native.cgroupdriver=systemd -H tcp://0.0.0.0:2375
#这个地方的2375端口必须在云服务器中开启否则外网无法访问
- vscode设置中搜索 docker:host 填写IP:[暴露的端口]
- F1 输入docker login 设置好要login的私仓地址 输入账号密码 登录成功 如果遇到问题 参照文章第二个问题修改
- F1 输入docker build 远端构建镜像
- F1 输入docker tag 修改所选镜像的别名
- F1 输入docker push 推到远程私仓