【微服务】Docker

打印 上一主题 下一主题

主题 1585|帖子 1585|积分 4755

一、Docker基础

1、依赖的兼容题目:Docker允许开发中将应用、依赖、函数库、配置一起打包,形成可移植镜像Docker应用运行在容器中,使用沙箱机制,相互隔离。
2、怎样解决开发、测试、生产环境有差异的题目:Docker镜像中包含完整运行环境,包括系统函数库,仅依赖系统的Linux内核,因此可以在任意Linux操作系统上运行。
3、docker是一个快速交付应用、运行应用的技能;启动、移除都可以通过一行命令完成,方便快捷。
4、docker和假造机的区别:


  • docker是一个系统进程,假造机是在操作系统中的操作系统。
  • docker体积小、启动速度快、性能好;假造机体积大、启动速度慢、性能一般。



5、docker架构
①镜像:Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。
②容器:镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。
③DockerHub: DockerHub是一个Docker镜像的托管平台。这样的平台称为Docker Registry,
④docker架构(CS)

二、安装docker

企业部署一般都是采用Linux操作系统,而其中又数CentOS发行版占比最多,因此我们在CentOS下安装Docket。安装docker的条件,Centos7,至少3.10及以上的版本。
1、卸载docker
以防之前安装过docker导致版本紊乱,首先在客户端尝试卸载docker
  1. yum remove docker \
  2.                   docker-client \
  3.                   docker-client-latest \
  4.                   docker-common \
  5.                   docker-latest \
  6.                   docker-latest-logrotate \
  7.                   docker-logrotate \
  8.                   docker-selinux \
  9.                   docker-engine-selinux \
  10.                   docker-engine \
  11.                   docker-ce
复制代码

2、安装docker
安装yum工具:
  1. yum install -y yum-utils \
  2.            device-mapper-persistent-data \
  3.            lvm2 --skip-broken
复制代码
更新本地镜像源:
  1. # 设置docker镜像源
  2. yum-config-manager \
  3.     --add-repo \
  4.     https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  5.    
  6. sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
  7. yum makecache fast
复制代码
然后输入命令:
  1. yum install -y docker-ce
复制代码
docker-ce为社区免费版本。稍等半晌,docker即可安装乐成。
3、启动docker
Docker应用需要用到各种端口,逐一去修改防火墙设置。非常贫苦,因此建议大家直接关闭防火墙!
启动docker前,肯定要关闭防火墙后!!
启动docker前,肯定要关闭防火墙后!!
启动docker前,肯定要关闭防火墙后!!
  1. # 关闭
  2. systemctl stop firewalld
  3. # 禁止开机启动防火墙
  4. systemctl disable firewalld
复制代码
通过命令启动docker:
  1. systemctl start docker  # 启动docker服务
  2. systemctl stop docker  # 停止docker服务
  3. systemctl restart docker  # 重启docker服务
复制代码
然后输入命令,可以检察docker版本:
  1. docker -v
复制代码
4、配置镜像:docker官方镜像堆栈网速较差,我们需要设置国内镜像服务:
参考阿里云的镜像加速文档:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
  1. sudo mkdir -p /etc/docker
  2. sudo tee /etc/docker/daemon.json <<-'EOF'
  3. {
  4.   "registry-mirrors": ["https://koxqhw57.mirror.aliyuncs.com"]
  5. }
  6. EOF
  7. sudo systemctl daemon-reload
  8. sudo systemctl restart docker
复制代码
三、Docker基本操作


怎样记住Docker命令:docker --help

四、容器相关操作


eg:创建一个nginx容器
  1. docker run --name containerName -p 80:80 -d nginx
  2. //docker run :创建并运行一个容器
  3. //--name:给容器起一个名字,比如叫做mn
  4. //-p︰将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
  5. //-d:后台运行容器
  6. //nginx:镜像名称,例如nginx
复制代码

在欣赏器访问主机号:80,如下情况部署乐成:

通过docker logs mn检察日记:

eg:进入Nginx容器,修改HTML文件内容
  1. docker exec -it mn bash
  2. //docker exec:进入容器内部,执行一个命令
  3. //-it:给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互
  4. //mn:要进入的容器的名称
  5. //bash:进入容器后执行的命令,bash是一个linux终端交互命令
复制代码
五、数据卷

将容器与数据分离,解耦合,方便操作容器内数据,保证数据安全.
数据卷操作基本语法如下:
  1. docker volume [COMMAND]
  2. //docker volume命令是数据卷操作,根据命令后跟随的command来确定下一步的操作:
  3. //create 创建一个volume
  4. //inspect 显示一个或多个volume的信息
  5. //ls 列出所有的volume删除未使用的volume
  6. //prune 删除一个或多个指定的volume
  7. //rm 删除一个或者多个指定的volume
复制代码
六、Dockerfile自定义镜像

1、镜像结构

2、Dockerfile是一个文本文件,其中包含一个个的指令,用指令俩说明执行什么操作来构建镜像,每一个指令都会形成一个layer


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

渣渣兔

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表