Docker入门在云服务器上跑你的第一个容器Docker是现在部署应用的主流方式之一但对新手来说概念有点抽象——镜像、容器、仓库……搞清楚之前看起来云里雾里。这篇从最实际的角度说怎么在服务器上装Docker然后用Docker跑一个Nginx网站让你有个直观感受。Docker是什么为什么要用它最简单的理解Docker帮你把应用和它需要的环境打包在一起。不管什么服务器、什么系统只要装了Docker同一个镜像跑出来的效果都一样不会出现在我电脑上能跑到服务器上就报错的情况。对个人来说Docker的好处是部署简单一条命令就能跑起来一个服务环境隔离多个应用互不干扰方便迁移换服务器直接迁镜像准备服务器Ubuntu 22.04。服务器配置不用高1核2G就够练手后面部署实际应用再根据需求升配。我用的是雨云服务器 rainyuncom入门配置性价比极高拿来折腾Docker学习完全够用。注册时用这个码2026off可领1张5折券安装Docker官方推荐的安装方式# 安装依赖sudoaptupdatesudoaptinstall-yca-certificatescurlgnupg# 添加Docker官方GPG keysudoinstall-m0755-d/etc/apt/keyringscurl-fsSLhttps://download.docker.com/linux/ubuntu/gpg|sudogpg--dearmor-o/etc/apt/keyrings/docker.gpgsudochmodar /etc/apt/keyrings/docker.gpg# 添加Docker仓库echodeb [arch$(dpkg --print-architecture)signed-by/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu$(./etc/os-releaseecho$VERSION_CODENAME)stable|sudotee/etc/apt/sources.list.d/docker.list/dev/null# 安装Dockersudoaptupdatesudoaptinstall-ydocker-ce docker-ce-cli containerd.io docker-compose-plugin验证安装成功docker--version让当前用户不用sudo也能用Dockersudousermod-aGdocker$USERnewgrpdocker跑第一个容器Nginx从Docker Hub拉取Nginx镜像并启动dockerrun-d-p80:80--namemynginx nginx参数说明-d后台运行detach-p 80:80把容器的80端口映射到主机的80端口--name mynginx给容器起个名字nginx使用官方Nginx镜像执行完在云服务器安全组放行TCP 80端口然后浏览器访问服务器IP看到Nginx欢迎页就说明成功了。几个常用的Docker命令# 查看正在跑的容器dockerps# 查看所有容器包括停止的dockerps-a# 停止容器dockerstop mynginx# 启动停止的容器dockerstart mynginx# 删除容器先stop再删dockerrmmynginx# 查看本地镜像dockerimages# 删除镜像dockerrmi nginx# 查看容器日志dockerlogs mynginx# 进入容器内部dockerexec-itmynginxbash用Docker Compose同时跑多个服务实际应用通常需要多个服务配合比如Web应用 MySQL Redis。每个都单独run很麻烦Docker Compose可以用一个文件定义所有服务一条命令全部启动。新建一个文件夹里面创建docker-compose.ymlversion:3services:web:image:nginxports:-80:80volumes:-./html:/usr/share/nginx/htmldepends_on:-dbdb:image:mysql:8.0environment:MYSQL_ROOT_PASSWORD:你的密码MYSQL_DATABASE:mydbvolumes:-mysql_data:/var/lib/mysqlvolumes:mysql_data:启动所有服务dockercompose up-d停止dockercompose down这个配置同时启动了Nginx和MySQLdepends_on让Web在MySQL启动后才启动。挂载自己的网站文件上面的Nginx例子怎么让它显示你自己的网页用-v参数把本地目录挂载进容器dockerrun-d-p80:80\-v/root/mysite:/usr/share/nginx/html\--namemynginx nginx把你的HTML文件放到/root/mysite/里Nginx就会提供这些文件。开机自启启动容器时加--restart always参数dockerrun-d-p80:80--restartalways--namemynginx nginx这样Docker重启、服务器重启后容器都会自动起来。Docker上手之后你会发现很多东西都可以用它部署博客、数据库、各种工具省去了手动配环境的麻烦。有问题评论区说。服务器推荐雨云官网