WSL2上使用docker安装nginx
WSL
window上的子系统,本文章讲解我在使用wsl安装docker配置nginx上所碰到的问题以及解决方案
WSL安装
wsl安装流程可参照此连接教程:https://blog.csdn.net/TiYong/article/details/136293656
WSL安装docker
docker安装文档链接如下https://docs.docker.com/engine/install/ubuntu/
我使用的是ubuntu系统,其他系统可以选择文档类似操作。
安装前提
安装docker前一定要换apt-get的源。
我的Ubuntu是22.04版本,网上找了对应的源链接如下https://blog.csdn.net/xiangxianghehe/article/details/122856771
安装
换源后按照官方流程走
注意这一部的网址需要换成你所对应的源的网址
这里我使用的是阿里云
这些处理完应该就成功安装好了
镜像加速
使用阿里云的容器镜像服务
根据对应的系统使用指令
这里我已经安装成功了
安装nginx
镜像地址https://hub.docker.com/_/nginx
使用指令
docker pull nginx
拉取nginx
可以看到已经成功拉取
数据挂载
拷贝所需的容器文件
我需要将nginx的配置文件以及放置静态网站的文件夹挂载出来,方便后序更改
这里可以看下docker的数据挂载内容
首先创建一个niginx容器,把需要的内容拷贝出来
使用指令把静态网站地址/usr/share/nginx/html
配置文件地址/etc/nginx/nginx.conf
拷贝
可以看到确实是nginx的内部文件
删除初始容器
我需要内部文件的示例,现在已经有了数据示例,可以删除nginx容器再实现挂载
创建nginx并实现数据挂载
我使用的是如下指令,docker指令可以网上搜索具体含义
docker run -d -p 5555:80 --name nginxOne \
> -v [/root/workspace/nginxLearn/html --这个是你所要放置的路径]:/usr/share/nginx/html \
> -v [/root/workspace/nginxLearn/nginx.conf --这个是你所要放置的路径]:/etc/nginx/nginx.conf \
> nginx
- -d 后台模式
- –name 容器名字
- -p 端口映射
- -v 数据卷
- 镜像名字
可以看到已经启动
网络配置
我配置了很久发现wsl如果使用镜像模式mirror
是无法正常使用docker再本机上访问nginx的
如果没有配置过wsl的网络可以跳过,wsl默认是NAT模式
配置
更换掉mirror模式,注释即可
重启wsl,打开docker服务,重启nginx
运行成功
现在可以看到wsl所给的ip地址
本机使用这个ip即可访问niginx,配置成功了!!!
更改网页
由于之前的数据挂载,现在更改数据就很方便了
完全不需要进入nginx容器内部就可以修改了
修改后
可以看到网页也修改了
至此安装结束!!!