家里装了NAS或者有台闲置的ref="/tag/414/" style="color:#C468A7;font-weight:bold;">服务器,想搭个私有云盘、建个博客,或者跑个下载工具?别再手动装环境配依赖了,用Docker几条命令就能搞定。就像打包好的快餐盒,扔进服务端直接开吃,干净利落。
先装Docker,一步到位
大多数Linux服务器用这条命令就能装好:
curl -fsSL https://get.docker.com | sh
装完顺手把当前用户加进docker组,免得每次敲命令都得sudo:
sudo usermod -aG docker $USER
拉镜像,就像下载App
比如你想跑个Nginx当静态网站服务器,先去Docker Hub搜官方镜像,然后拉下来:
docker pull nginx
这就像从应用商店把App下到手机里,只不过现在是服务端在“下载”一个预装好的系统环境。
启动容器,一键运行
镜像有了,接下来启动容器。比如把本地的8080端口映射到容器的80,这样访问服务器IP:8080就能看到默认页面:
docker run -d -p 8080:80 --name myweb nginx
-d 是后台运行,--name 给容器起个名字,方便后续管理。这时候你家里的路由器如果做了端口转发,外网也能访问这个页面了。
挂载数据,别让文件丢掉
容器删了,里面的数据就没了。想保存网页文件,得挂载目录。比如把本地的 /home/www 映射到容器的 /usr/share/nginx/html:
docker run -d -p 8080:80 -v /home/www:/usr/share/nginx/html --name myweb nginx
以后改网页内容,直接去 /home/www 里改,刷新浏览器立马生效。
常用命令,随用随查
查看正在跑的容器:
docker ps
停掉某个服务:
docker stop myweb
重新启动:
docker start myweb
想彻底删除:
docker rm -f myweb
举个实际例子:搭个Aria2下载机
想在服务器上跑个下载工具,自动下电影、备份文件?用wahyd4/aria2-ui这个镜像,一条命令搞定:
docker run -d -p 6888:80 -p 6889:443 -e PUID=1000 -e PGID=1000 -e TZ=Asia/Shanghai -v /home/aria2:/config -v /home/downloads:/downloads --name aria2 wahyd4/aria2-ui
打开浏览器访问 http://你的服务器IP:6888,密码默认是 aria2ui,进去就能用Web界面添加下载任务。配合家庭宽带的上传速度,晚上挂机下载,白天手机随时看。
用熟了Docker,你会发现以前折腾半天的环境问题,现在几分钟就搞定了。家里的小服务器也能发挥大作用,和无线网络搭配起来,真正实现数据自由流转。