当前位置: 首页 > news >正文

【docker快捷部署系列一】docker快速入门,安装docker,解决运行Docker Quickstart Terminal出错

1、docker快速入门

视频链接

知识点概述
  • docker是轻量级虚拟机
  • image是镜像 相当于虚拟机快照
  • container是容器,相当于运行起来的虚拟机程序
  • Dockerfile 是创建docker镜像的自动化脚本
  • docker-compose 是一个定义和运行多个容器命令的工具,包括运行Dockerfile脚本
  • volume 数据卷,让容器数据持久保存到本机的地方
常用命令
  • 拉取镜像
    docker search mysql 先查看下相关镜像及名字
    docker pull mysql 拉取镜像
    docker images 查看全部镜像
    docker rmi 【镜像名或id】删除镜像
    docker pull hello-world 测试镜像
    docker run hello-world 运行
  • 容器运行
    docker run -p 80:5000 -d 引用的镜像名 --name 容器名 还可以加数据卷
    -p映射端口 前面80是本机端口,后面5000是容器程序暴露的端口 ,也可以一样-p 80:80
    也可以映射多个端口,比如再加一次-p 8080::8080
    -d 指后台运行
    –name 设置容器名
    -v /home/mydata:/app/data 前面是本机文件夹,后面是容器内文件夹;或者使用docker创建的数据卷,-v mysql-data:/var/lib/mysql
    docker ps 列出运行的容器,再加-a列出所有状态容器
    docker rm 【容器名或id】用于删除一个或多个容器
  • 数据卷
    docker volume create mysql-data(数据卷名称) 创建数据卷
    docker volume ls 列出所有的数据卷
    docker volume inspect <volume_name>查看数据卷定义
    docker volume rm [volume_name] 删除数据卷
  • 容器操作
    docker start [volume_name]:启动一个或多个已经被停止的容器
    docker stop [volume_name]:停止一个运行中的容器
    docker restart [volume_name]:重启容器
    docker pause [volume_name] :暂停容器中所有的进程。
    docker unpause [volume_name]:恢复容器中所有的进程。
    docker exec -it [volume_name] /bin/bash:进入容器内操作
    exit退出容器
  • Dockerfile创建镜像
    docker build -t 镜像名 .句点表示在当前目录下寻找Dockerfile(无后缀名),创建完后就用docker run运行
  • docker-compose
    首先编写docker-compose.yml,后续文章再详细展开,这里比如:
version: '3'
services: nginx: image: nginxports: - "443:443" 

docker-compose up -d 运行docker-compose.yml里的所有容器,-d后台运行
docker-compose down 停止并删除,数据卷需要手动删除

2、安装docker

win10安装Docker Desktop更好;我的win7只能安装Docker Toolbox;docker只能运行在linux系统,所以在windows系统上运行的是虚拟的linux环境。

  • 安装方法:
    文章链接一
    文章链接二
    文章链接三
  • 启动Docker Quickstart Terminal报错,解决方案放最后
  1. 已经成功下载boot2docker.iso,并放入C:\Users\Administrator.docker\machine\cache
  2. 还是报错:VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component MachineWrap, interface IMachine
    网上找了大部分解决方案,还是不行。
  3. 打开virtualbox查看出错日志:
47c8.28c4: Error (rc=0):
47c8.28c4: supR3HardenedMonitor_LdrLoadDll: rejecting 'C:\windows\system32\uxtheme.dll' (C:\windows\system32\uxtheme.dll): rcNt=0xc0000190
47c8.28c4: supR3HardenedMonitor_LdrLoadDll: returns rcNt=0xc0000190 'C:\windows\system32\uxtheme.dll'
47c8.28c4: supR3HardenedScreenImage/LdrLoadDll: cache hit (Unknown Status -22900 (0xffffa68c)) on \Device\HarddiskVolume1\Windows\System32\uxtheme.dll

怀疑是uxtheme.dll出问题了,修复一下还是不行,文章链接

  1. 再看出错信息
CryptCATAdminEnumCatalogFromHash failed ERROR_NOT_FOUND (1168)
cache hit (Unknown Status -22900 (0xffffa68c)) on \Device\HarddiskVolume1\Windows\System32\user32.dll

这次这篇文章解决了我的问题,文章链接
解决方案就是直接卸载virtualbox,安装降级到低版本4.3.12,下载链接

http://www.lryc.cn/news/417130.html

相关文章:

  • vulnhub靶机实战_DC-8
  • 如何做到项目真实性优化?保姆级写简历指南第五弹!
  • Python Beautiful Soup介绍
  • NDI Tools汉化版的安装
  • 【JAVA多线程】AQS,JAVA并发包的核心
  • springcloud loadbalancer nacos无损发布
  • React原理
  • React-Native优质开源项目
  • Ajax-02
  • 供应商较多的汽车制造业如何选择供应商协同平台?
  • 【开端】JAVA Mono<Void>向前端返回没有登陆或登录超时 暂无权限访问信息组装
  • Python(模块---pandas+matplotlib+pyecharts)
  • 解决使用Navicat连接数据库时,打开数据库表很慢的问题
  • nginx重启报错nginx: [error] invalid PID number
  • 人工智能深度学习系列—深度学习中的相似性追求:Triplet Loss 全解析
  • 26. Hibernate 如何自动生成 SQL 语句
  • 预言机(Oracle machine)
  • 55、PHP实现插入排序、二分查找
  • [Git][分支设计规范]详细讲解
  • c#中winfrom需要了解的
  • 操作系统03:调度算法和文件系统
  • 大量中国高清地图,必须收藏!!
  • 无线领夹麦克风哪个品牌好,2024年收音麦哪个品牌好一点
  • 如何解决.NET8 类库Debug时,Debug文件夹中不包含Packages中引入的文件
  • 域名安全详解
  • 使用gstreamer命令行解析RTSP流
  • 如何基于离线包中“事件热点”进行二次开发
  • 使用继电器实现门电路(1)常用门电路的简化实现
  • 程序员常用单词分类
  • c语言11天笔记