一.添加镜像加速器
1.若无daemon.json则创建
mkdir -p /etc/docker
touch /etc/docker/daemon.json
2.添加加速器地址
vi /etc/docker/daemon.json
a命令输入
{
"registry-mirrors":["https://registry.docker-cn.com"]}
按Esc在输入:wq!
:wq!
3.重启服务
systemctl daemon-reload
systemctl restart docker
4.开放端口8080
若不开放端口则无法访问,也可以直接关闭防火墙(可以用ip+8080来访问)
开放端口8080:
firewall-cmd --zone=public --add-port=8080/tcp --permanent
[root@dev docker]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success
配置立即生效:
firewall-cmd --reload
- 查看防火墙某个端口是否开放 : firewall-cmd --query-port=80/tcp
- 查看防火墙状态: systemctl status firewalld
- 关闭防火墙: systemctl stop firewalld
- 打开防火墙: systemctl start firewalld
- 开放一段端口: firewall-cmd --zone=public --add-port=8121-8124/tcp --permanent
- 查看开放的端口列表: firewall-cmd --zone=public --list-ports
5.安装Nginx
安装Nginx镜像
docker pull nginx
检验是否安装成功
docker images
[root@dev docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 08b152afcfae 5 days ago 133MB
hello-world latest d1165f221234 4 months ago 13.3kB
6.开启docker
将80端口映射为8080,或者80:80还是原先的80端口,不可以不写。(可开启多个docker,但端口不能重复)
docker run -p 8080:80 -d docker.io/nginx
或
docker run --name mynginx(自定义名字) -d -p 8080:80 nginx
查看是否运行
docker ps
[root@dev docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8c737c0092bd nginx "/docker-entrypoint.…" 8 minutes ago Up 8 minutes 0.0.0.0:8080->80/tcp, :::8080->80/tcp mynginx
7.访问
该页面代表开启成功
拓展:
8c737c0092bd 是 Nginx的CONTAINER ID
创建Nginx配置文件目录
mkdir -p /opt/nginx/html /opt/nginx/logs
复制Nginx的配置文件到新建目录中
docker cp 8c737c0092bd:/etc/nginx/nginx.conf /opt/nginx/conf
docker cp 8c737c0092bd:/etc/nginx/conf.d /opt/nginx/conf
把default.conf里的复制到nginx.conf中再运行
docker run -p 8080:80 -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/logs:/var/log/nginx -d nginx
停止并删除nginx容器
停止nginx容器
docker stop 8c737c0092bd
删除nginx容器
docker rm 8c737c0092bd
查看nginx容器是否删除
docker ps -a