linux 安装docker 及搭建docker 镜像 环境,部署 nginx
1.检查系统信息
命令:
cat /etc/redhat-release 查看系统版本
uname -r 查看内核版本 必须高于3.10
2.安装依赖
命令:
yum update
yum install -y gcc gcc-c++
yum install -y yum-utils
3.设置yum源
命令:
yum-config-manager --add-repo https://link.zhihu.com/?target=https%3A//download.docker.com/linux/centos/docker-ce.repo
启用稳定存储库 yum-config-manager enable docker-ce-nightly
禁用测试存储库 yum-config-manager --disable docker-ce-test
4.安装docker引擎
查看可安装 docker 版本列表:
yum list docker-ce --showduplicates | sort -r
安装指定版本 docker:
yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
安装最新的 docker:
yum install docker-ce docker-ce-cli http://containerd.io
删除 docker 默认镜像源,重新设置为 aliyun 镜像源:
cd /etc/yum.repos.d/
rm docker-ce.repo
yum clean all
yum makecache fast
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
再次安装:
yum install -y docker-ce docker-ce-cli http://containerd.io
先卸载:
yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
再次安装:
yum install -y docker-ce docker-ce-cli http://containerd.io
5.启动docker
systemctl start docker
设置开机启动:
systemctl enable docker
6.查看docker版本
docker version
7.运行hello-word 镜像验证docker 引擎
docker run hello-world
8.查看本地镜像
docker images
列含义:
REPOSITORY:镜像的仓库源;
TAG:镜像的标签;
IMAGE ID:镜像的 ID;
CREATED:镜像的创建时间;
SIZE:镜像得大小。
搜索镜像:
docker search [OPTIONS] 镜像名
例1:
搜索点赞数大于50的tomcat镜像:
docker search --filter=stars=50 tomcat
下载镜像:
docker pull 镜像名[:TAG]
删除镜像:
docker rmi -f 镜像的ID 镜像的ID
docker rmi -f 镜像名[:TAG] 镜像名[:TAG]
删除全部镜像:
docker rmi -f $(docker images -qa)
列出当前正在运行的容器列表:
docker ps [OPTIONS]
OPTIONS 参数列表:
-a:列出当前正在运行的所有容器列表和以前运行过的容器列表;
-l:显示最近创建的容器;
-n:显示最近n个创建的容器;
-q:静默模式,只显示容器编号;
--no-trunc:不截断输出。
新建并启动容器:
docker run [OPTIONS] IMAGE(镜像名/ID) [COMMAND] [ARG...]
OPTIONS 参数列表:
--name 容器新名称:为容器指定一个新名称;
-d:后台运行容器,并返回容器ID,即启动守护式容器;
-i:以交互模式运行容器,通常与-t同时使用;
-t:为容器重新分配一个伪输入终端,通常与-i同时使用;
-P:随机端口映射;
-p:指定端口映射,有以下四种格式:
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort
例1:
docker run -it centos
例2:
docker run -d centos
启动容器:
docker start 容器名/容器ID
重启容器:
docker restart 容器名/容器ID
退出容器:
容器停止退出:exit
容器不停止退出:ctrl + P + Q
停止当前正在运行的容器:
docker stop 容器名/容器ID
强制停止当前正在运行的容器:
docker kill 容器名/容器ID
删除已停止的容器:
docker rm [OPTIONS] 容器ID
OPTIONS 参数列表:
-f:强制删除容器,包括正在运行的容器。
一次性删除多个容器:
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm
查看日志:
docker logs -f -t --tail 显示行数 容器ID
OPTIONS 参数列表:
-t:加入时间戳;
-f:跟随最新的日志打印;
--tail 显示行数:显示最后多少行。
查看容器内的进程信息:
docker top 容器ID
查看容器内部细节:
docker inspect 容器ID
进入正在运行的容器:
在容器中打开新的终端,并且可以启动新的进程:
docker exec -it 容器ID /bin/bash
docker exec -t 容器ID ls -l /tmp
直接进入容器启动命令终端,不会启动新的进程:
docker attach 容器ID
清除 docker 镜像缓存:
docker system prune --volumes
从容器内拷贝文件到主机上:
docker cp 容器ID:容器内文件路径 目标主机路径
安装Nginx
docker pull nginx:latest 安装最新版本镜像
查看本地镜像
docker images
运行容器
docker run --name nginx-test -p 8080:80 -d nginx
参数说明
- --name nginx-test:容器名称。
- -p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。
- -d nginx: 设置容器在在后台一直运行。
查看容器
docker ps -a
nginx 安装成功
通过浏览器查看设置的端口服务
查看docker 路径
sudo docker info |grep -i root
通过文件查找命令可查找 指定文件
find / -name 'nginx.conf'
进入docker 容器内修改配置文件
1.进入容器: docker exec -it nginx /bin/bash;
nginx 是容器名称
2.修改配置文件
vim /etc/nginx/nginx.conf
- 因为容器与外界是完全隔离的,使用vim命令请先安装vim
apt-get update apt-get install -y vim
- 修改完配置,重新加载Nginx
nginx -s reload
退出容器:exit