Docker 使用-部署

一、基础概念
1) 镜像和容器的区别是什么?
镜像是一个静态的文件,包含应用程序以及依赖文件的快照(虚拟机文件)
容器是一个运行实例,它是由镜像创建的,容器是一个独立的运行环境(虚拟机系统)
容器是进程,镜像是文件。
2) RUN,CMD,ENTRYPOINT三者的区别

RUN构建镜像的时候,使用的,通常用于安装软件,注意,每条RUN命令会构建一个镜像层,需要谨慎使用,尽量少用,以减少镜像大小。

CMD指定容器启动后默认的命令和参数,一个Dockerfile只能使用一个CMD命令,有多个,最后一个才会生效,示例:CMD cmd parame1 param2 CMD["python", "app.py"]

ENTRYPOINT功能同CMD,但是指令定义的命令无法覆盖。

使用场景:如果希望保留启动容器时执行默认命令,并且希望能够在运行容器时指定新命令,使用CMD,若果在任何情况下都要执行某个命令,那么使用ENTRYPOINT
3)

二、Docker CE 安装
1、依赖安装
yum install -y yum-utils device-mapper-persistent-data lvm2

2、设置镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(可以使用docker-ce 官方仓库进行替换上述地址: https://download.docker.com/linux/centos/docker-ce.repo)

提示:如果如下报错
slirp4netns >= 0.4
错误:软件包:3:docker-ce-20.10.5-3.el7.x86_64 (docker-ce-stable)
需要:container-selinux >= 2:2.74
错误:软件包:containerd.io-1.4.4-3.1.el7.x86_64 (docker-ce-stable)
需要:container-selinux >= 2:2.74

通过以下解决:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache

3、安装 Docker CE
yum install -y docker-ce (docker-ce-cli containerd.io)

关闭防火墙以及安全保护
systemctl stop firewalld.service
systemctl disable firewalld.service

senenforce 0
vim /etc/selinux/config (SELINUX=disabled)

4、启动Docker服务
systemctl start docker
systemctl enable docker(开机自启动)

5、验证安装是否成功
docker run hello-world (自动下载镜像)

二、Docker 常见命令

Dockerfile

FROM:指定基础镜像

MAINTAINER:镜像维护人信息

RUN:构建镜像时要执行的命令

ADD:添加本地文件到容器,可以使网络文件,自动下载,压缩包也会解压

COPY:同ADD,只是复制,不解压,不下载

CMD:容器启动后需要执行的命令,使用docker run运行容器的时候,可以在命令行被覆盖

ENTRYPOINT:同CMD,区别是该命令不会被命令行覆盖

VOLUME:指定数据持久化目录,也称挂载

        VOLUME  /var/hostDir /var/dockDir 

WORKDIR: 设置工作目录

docker build

-t 指定镜像name以及tag

-f 构建指定路径下的Dockerfile

docker run

-d 后台运行,默认是前端运行,即在控制台中运行

-p 容器端口映射到主机端口 如 -p 8080:80 (80容器端口,8080主机端口)

-v 主机目录挂载到容器 如 -v /var/hostdir:/var/containerdir

-it 交互方式运行容器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值