docker启动的nginx如何使用域名
温馨提示:这篇文章已超过101天没有更新,请注意相关的内容是否还可用!
在当今的云计算时代,Docker 作为容器化技术的佼佼者,已经广泛应用于各种服务部署中,Nginx 作为一款高性能的HTTP和反向代理服务器,常被用于构建网站和应用服务,当我们在 Docker 中启动 Nginx 时,如何配置和使用域名呢?下面,就让我为大家详细介绍一下这个过程吧!🌟
我们需要创建一个包含 Nginx 配置文件的 Docker 镜像,这里,我们可以使用官方的 Nginx 镜像作为基础。👇
docker pull nginx
我们创建一个自定义的 Nginx 配置文件,并映射到容器的
/etc/nginx/nginx.conf路径,这里,我们以一个简单的配置为例,将域名
example.com映射到本地主机
168.1.100。📜
。📜
cat > mynginx.conf << EOFuser nginx;worker_processes 1;events { worker_connections 1024;}http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; keepalive_timeout 65; server { listen 80; server_name example.com; location / { root /usr/share/nginx/html; index index.html index.htm; } } server { listen 80; server_name 192.168.1.100; location / { proxy_pass http://localhost:8080; } }}EOF我们使用 Dockerfile 创建一个新的镜像,并将自定义的配置文件++到镜像中。🏭
FROM nginx:latestCOPY mynginx.conf /etc/nginx/nginx.conf
构建并运行 Docker 容器。🚀
docker build -t mynginx .docker run -d -p 80:80 --name mynginx mynginx
我们的 Nginx 服务已经启动,并且通过域名
example.com可以访问到本地主机
168.1.100的 8080 端口,为了实现这一目标,我们在自定义配置文件中添加了一个额外的
server块,用于代理域名
example.com到本地主机
168.1.100的 8080 端口。🔗
的 8080 端口。🔗
我们需要在本地主机上配置 DNS,将域名
example.com解析到 Docker 容器的 IP 地址,这里,我们可以使用
hosts文件来实现。📝
文件来实现。📝
echo "192.168.1.100 example.com" >> /etc/hosts
当我们访问
http://example.com时,浏览器会自动跳转到本地主机
168.1.100的 8080 端口,从而实现通过域名访问 Nginx 服务。🎉
的 8080 端口,从而实现通过域名访问 Nginx 服务。🎉
通过以上步骤,我们就成功地在 Docker 中启动了使用域名的 Nginx 服务,希望这篇文章能对大家有所帮助!🌈
The End
发布于:2025-07-31,除非注明,否则均为原创文章,转载请注明出处。