首页 > 其他分享 >docker的技术学习

docker的技术学习

时间:2023-04-13 09:56:34浏览次数:48  
标签:容器 compose 技术 学习 镜像 docker blast Docker

Docker神器的使用

原创 生信小尧 生信小尧 2023-02-21 17:38 发表于广东 收录于合集#linux5个

 

点击蓝字 关注我们

 

 

什么是Docker?

Docker 是一个开源的应用容器引擎

诞生于 2013 年初,基于 Go 语言实现, dotCloud 公司出品(后改名为Docker Inc)

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux 机器上。

容器是完全使用沙箱机制,相互隔离

容器性能开销极低。

Docker 从17.03 版本之后分为CE(Community Edition: 社区版)和EE(Enterprise Edition: 企业版)

 

 

Docker安装

Docker可以运行在MAC、Windows、CentOS、UBUNTU等操作系统上,本次分享基于ubuntu安装Docker。

https://docs.docker.com/desktop/install/ubuntu/

# 安装依赖sudo apt updatesudo apt install apt-transport-https ca-certificatescurl gnupg-agent software-properties-common# 添加源curl -fsSL https://download.docker.com/linux/ubuntu/gpg |sudo apt-key add -sudo add-apt-repository"deb [arch=amd64] https://download.docker.com/linux/ubuntu$(lsb_release -cs) stable"# 安装 dockersudo apt install docker-ce docker-ce-cli containerd.io# 添加用户## docker 默认需要sudo 才能运行,将用户添加进 docker 组即可直接运行。sudo usermod -aG docker 用户名

 

 

Docker架构

图片图片

由于国内image下载速度太慢,可以用如下方法提速:

#针对Docker客户端版本大于 1.10.0 的用户#您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{  "registry-mirrors": ["https://xxxxxxxx.mirror.aliyuncs.com"]}#注意xxxxxxxx需自己登录阿里云查看EOFsudo systemctl daemon-reloadsudo systemctl restart docker#查看是否添加成功docker info#Registry Mirrors:#https://xxxxxxxx.mirror.aliyuncs.com

 

 

Docker命令

#启动和关闭docker(ubuntu)sudo service docker startsudo service docker restartsudo service docker stopsudo service docker status
#查看本地所有的镜像docker imagesdocker images –q # 查看所用镜像的id#从网络中查找需要的镜像docker search 镜像名称#拉取镜像docker pull 镜像名称#删除本地镜像docker rmi 镜像id # 删除指定本地镜像docker rmi `docker images -q` # 删除所有本地镜像
#查看容器docker ps # 查看正在运行的容器 docker ps –a # 查看所有容器#创建并启动容器docker run 参数#-i:保持容器运行。通常与 -t 同时使用。加入it这两个参数后,容器创建后自动进入容器中,退出容器后,容器自动关闭。#-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用。#-d:以守护(后台)模式运行容器。创建一个容器在后台运行,需要使用docker exec 进入容器。退出后,容器不会关闭。#-it 创建的容器一般称为交互式容器,-id 创建的容器一般称为守护式容器#--name:为创建的容器命名。#进入容器docker exec 参数 # 退出容器,容器不会关闭#停止容器docker stop 容器名称#启动容器docker start 容器名称#删除容器docker rm 容器名称#查看容器信息docker inspect 容器名称#配置数据卷(可挂载多个数据卷)docker run ... –v 宿主机目录(文件):容器内目录(文件) ...#配置映射端口docker run ... -p 3307:3306 ...#将容器的 3306 端口映射到宿主机的 3307 端口。

 

 

Dockerfile镜像制作

图片
# 挂载本地目录,安装 blast 软件docker run -it ubuntu bashapt updatecd /opt/wget https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.13.0+-x64-linux.tar.gztar -zxvf ncbi-blast-2.13.0+-x64-linux.tar.gz# 将容器 4cba8154cd53 制作为 镜像 blastdocker commit 4cba8154cd53 blast# 导出为本地文件,重新加载使用 docker loaddocker save -o blast.tar blast

Dockerfile

图片
# vim centos_dockerfileFROM centos:7MAINTAINER itheima<[email protected]>RUN yum install -y vimWORKDIR /usrCMD /bin/bash# docker build -f centos_dockerfile -t itheima_centos:1 .docker run -it --name=c5 itheima_centos:1

 

 

什么是Docker Compose?

Docker Compose是一个编排多容器分布式部署的工具,提供命令集管理容器化应用的完整开发周期,包括服务构建启动和停止。使用步骤:

1.利用 Dockerfile 定义运行环境镜像

2.使用 docker-compose.yml定义组成应用的各服务

3.运行 docker-compose up 启动应用

#安装Docker Compose# Compose目前已经完全支持Linux、Mac OS和Windows,在我们安装Compose之前,需要先安装Docker。下面我 们以编译好的二进制包方式安装在Linux系统中。curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose# 设置文件可执行权限 chmod +x /usr/local/bin/docker-compose# 查看版本信息 docker-compose -version#卸载Docker Compose# 二进制包方式安装的,删除二进制文件即可rm /usr/local/bin/docker-compose

 

 

Docker容器化虚拟化与传统虚拟机比较

图片图片

上述资料整理于黑马程序员docker课程

生信小尧 本人为在读硕士研究生,此公众号旨在分享生信知识及个人学习经历,欢迎各位同学、老师及各界人士的交流批评指正。 26篇原创内容 公众号

图片

你们点点“分享”,给我充点儿电吧~

生信小尧

赞赏二维码喜欢作者

收录于合集 #linux  5个 上一篇初入学习Linux下一篇Docker神器的使用 阅读 44   生信小尧 26篇原创内容  

标签:容器,compose,技术,学习,镜像,docker,blast,Docker
From: https://www.cnblogs.com/cherishthepresent/p/17312294.html

相关文章

  • 对比学习中的温度超参数
    如果温度系数设的越大,logits分布变得越平滑,那么对比损失会对所有的负样本一视同仁,导致模型学习没有轻重。如果温度系数设的过小,则模型会越关注特别困难的负样本,但其实那些负样本很可能是潜在的正样本,这样会导致模型很难收敛或者泛化能力差。......
  • springboot学习随笔
    1.大纲-springboot框架1.什么是Springboot以及Springboot的特点。2.快速搭建springboot项目3.springboot常用的配置文件类型.4.读取springboot配置文件的内容5.多环境配置6.springboot整合数据源。7.springboot整合mybatis.8.springboot整合定时器。2.Springbo......
  • 学习笔记397—Docker数据管理
    Docker有两种数据管理的方式数据卷:容器内数据直接映射到本地主机环境;数据卷容器:使用特定容器维护数据卷.数据卷数据卷是一个可供容器使用的特殊==目录==,它将主机操作系统目录直接映射进容器数据卷的特性:可以在容器之间共享和重用,容器间传递数据将变得高效与方......
  • Redis学习
    打开redis服务在redis的解压路径下找到redis-server.exe双击即可弹出这个窗体,不要关闭!关闭服务也关了打开redis客户端在redis的解压路径下找到redis-cli.exe双击即可基本命令key操作命令1、获取所有键语法:keyspattern127.0.0.1:6379#keys*"age"查找匹配给定......
  • 四月学习之LVS基本概述
    一、LVS基本概述1、什么是LVSLVS的英文全称是linuxvirtualserver,即linux虚拟服务器,其实它是一种cluster集群技术,主要用于负载均衡,将用户请求均匀的调度到不同的服务器上执行注意:LVS是基于四层IP:PROT的负载均衡2、为何需要LVS1、解决七层端口数不够问题,实现百万连接2、解......
  • 今日总结-python连接数据库的学习
          ......
  • 18.四数之和——学习笔记
    题目:给你一个由n个整数组成的数组nums,和一个目标值target。请你找出并返回满足下述全部条件且不重复的四元组[nums[a],nums[b],nums[c],nums[d]](若两个四元组元素一一对应,则认为两个四元组重复):0<=a,b,c,d<na、b、c和d互不相同nums[a]+nums[b]+nums[c......
  • 15.三数之和——学习笔记
    题目:给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。请你返回所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。示例1:输入:nums=[-1,0,1,2,-1,-4]输......
  • Docker介绍下载安装、制作镜像及容器、做目录映射、做端口映射
    在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物......
  • 什么是laas-Paas-Saas,docker启动设置镜像,镜像相关命令,容器相关命令
    目录什么是laas-Paas-Saas,docker启动设置镜像,镜像相关命令,容器相关命令昨日内容回顾今日内容详细1什么是laas-PaaS-SaaS2docker启动设置镜像2.1启动与停止常用命令3镜像相关命令4容器相关命令补充什么是laas-Paas-Saas,docker启动设置镜像,镜像相关命令,容器相关命令昨日内容......