docker,172网段,腾讯云,部署服务踏坑之路

本文介绍了如何使用Dockerfile创建Apache和Nginx服务器的镜像,并进行前端应用的部署。针对Docker中静态文件的配置,包括修改Nginx的default.conf文件以适配服务IP和端口。同时,提到了解决前端访问Docker内Java服务的网络问题,如通过远程服务器访问、改变Docker网络配置等方法。
摘要由CSDN通过智能技术生成
  1. 前端静态文件中创建Dockerfile

a), 使用apache服务器打包Dockerfile

FROM httpd:alpine3.14
COPY ./dist/ /usr/local/apache2/htdocs/
  • FROM – 镜像中运行网页的服务程序httpd:alpine3.14是apahce服务器以及版本号
  • COPY – 把当前目录的网站复制到apache服务器的htdocs

b), 使用nginx打包并修改默认配置

  • default.conf
server {
    listen       9999;
    server_name  110.42.156.172; # 修改为docker服务宿主机的ip

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html =404;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}
  • Dockerfile
FROM nginx
MAINTAINER kksdocker
RUN rm /etc/nginx/conf.d/default.conf
ADD default.conf /etc/nginx/conf.d/
COPY dist/ /usr/share/nginx/html/
  1. 拉取网页的服务程序
docker pull httpd:alpine3.14
  1. 打包成镜像
docker build -t 镜像名 .
  • . - 打包错误一般是没有写 .
  1. 运行镜像
docker run -d -p 主机端口:80 --name 容器名
  1. 查看容器信息
docker inspect 容器名
  1. 进入容器修改网页
docker exec -it 容器名 /bin/sh
  • 进入容器后,网站默认放置在htdocs
  • 配置文件一般在conf中
  1. 授权
  • 网页打开如果出现css等无法加载,可能是容器没有linux访问权限
  • 授予读取修改权限
chmod 777 -R htdocs
  1. 本机前端无法访问本机docker-java服务
  • docker内部网段是172,腾讯内网也是172,导致前端访问127.0.0.1或172局域网地址,都无法访问本机docker-java服务
  • 解决方法:1,使用另一台云服务器远程访问;
  • 2,前端不使用docker打包,直接放置nginx/apache中运行
  • 3,修改docker默认网段后访问(未测试成功)
  • 4,配置小皮面板或宝塔面板,前端放在面板中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值