docker命令

Docker初学

淺唱寂寞╮ 提交于 2020-02-12 11:30:00
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 这次首先说一下docker的三个重要内容: 仓库: 注册服务器是一个存放仓库的地方,在里面可以存放多个仓库。每个仓库集中存放同一类镜像,往往可以包括多个镜像,通过不同的标签来进行区分。 镜像: docker的镜像更像虚拟机镜像,只不过是一个基于Docker引擎的只读镜像。 容器: 容器是基于镜像的实例,可以对其进行,运行、停止以及删除操作,一般情况下我们主要操作的是对容器进行的。就像这次我要将JDK8和Tomcat8的安装环境打包以方便再次使用。 在CentOS中可以使用yum对Docker进行安装: yum install docker 启动Dokcer : systemctl start docker 启动时可能遇到报错: Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details. 解决方法: vim /etc

Docker Compose 常用命令

末鹿安然 提交于 2020-02-12 08:46:48
docker-compose 命令   大多数Compose命令都是运行于一个或多个服务的,如果服务没有指定,该命令将会应用到所有服务,如果要获得所有可用信息,使用命令: docker-compose [COMMAND] --help build 创建或者再建服务 服务被创建后会标记为project_service(比如composetest_db),如果改变了一个服务的Dockerfile或者构建目录的内容,可以使用 docker-compose build 来重建它 help 显示命令的帮助和使用信息 kill 通过发送 SIGKILL 的信号强制停止运行的容器,这个信号可以选择性的通过,比如: docker-compose kill -s SIGKINT logs 显示服务的日志输出 logs 后面什么都不加,则输出该项目所有服务的日志信息 docker-compose logs SERVICE 则输出该服务的日志信息 port 为端口绑定输出公共信息 ps 显示容器 pull 拉取服务镜像 rm 删除停止的容器 run 在服务上运行一个一次性命令,比如: docker-compose run web python manage.py shell scale 设置为一个服务启动的容器数量,数量是以这样的参数形式指定的:service=num,比如: docker

Docker关于镜像、容器的基本命令

北城以北 提交于 2020-02-12 01:48:25
镜像 1.获取镜像 docker pull 服务器:端口/仓库名称:镜像 ➜ ~ docker pull python Using default tag: latest 2.查看镜像信息 列出本机所有镜像: dokcer images 更改镜像信息: $ docker tag dl.dockerpool.com:5000/ubuntu:latest ubuntu:latest 显示镜像详细信息: $docker inspect 镜像ID 3.搜索镜像 $docker search XXX (输出信息包括镜像名字、描述、星级、是否为官方创建、是否自动创建) 4.删除镜像 $docker rmi XXX 容器 1.创建容器 docker create -it XXX 2.创建并启动容器 docker run -it XXX [/bin/bash] 3.守护态运行 docker run -d XXX 4.查看容器信息 docker ps [-a -q] 5.查看容器输出信息 docker logs 容器ID[前缀/完整] 6.终止容器 docker stop 容器ID 7.启动容器 docker start 容器ID 8.重启容器 docker restart 容器ID 9.进入容器 attach命令: docker attach dokcername exec命令: dokcer

Docker构建Python Web环境

给你一囗甜甜゛ 提交于 2020-02-11 22:28:55
出于寻找Docker对Python相关项目部署的学习,找到腾讯课堂NEXT公开课中【Docker构建Python Web环境】的课程,本文对其进行内容梳理及知识点汇总。 该课程总计6小时左右,是个适合小白入门Docker部署的基础课程。课程主要章节内容如下: 系统及软件配置: Win10 + CentOS7 + Python3 + MySQL8 + PyCharm + VMware15 pro + MobaXterm + Navicat Premium 12 一、基础篇 1、CentOS默认安装了Python2,可以再安装Python3,原有Python2不做卸载,CentOS7存在对Python2程序依赖。 2、yum命令不能直接安装Python,需先安装epel源 yum install epel-release 3、Linux各文件夹含义 1 /boot 该目录默认下存放的是Linux的启动文件和内核。 2 /bin 该目录中存放Linux的常用命令。 3 /sbin 该目录用来存放系统管理员使用的管理程序。 4 /var 该目录存放那些经常被修改的文件,包括各种日志、数据文件。 5 /etc 该目录存放系统管理时要用到的各种配置文件和子目录,例如网络配置文件、Mysql配置文件。 6 /dev 该目录包含了Linux系统中使用的所有外部设备,它实际上是访问这些外部设备的端口

docker 命令笔记-安装tomcat

南楼画角 提交于 2020-02-11 20:49:20
#安装Tomcat docker pull tomcat #创建容器 docker run --name tomcat -p 8081:8080 -v C:\zws\docker\tomcat:/usr/local/tomcat/webapps/ -d tomcat #删除容器 docker stop 3273 docker rm 3273#启动容器docker start 3273 因为 安装时挂载目录弄错了,所以删除了容器重新创建。 tomcat 安装以后需要 使用 cmd 进入把 webapps.dist 拷贝到 webapps 目录下。ps :powershell 是非交互的,所以不能用。 #进入容器 docker exec -it tomcat bash #修改移动文件 rm webapps.dist/* webapps 然后访问 http://localhost:8081/ 第二天我再访问发现访问不同了,容器挂起了 21 天 ,于是我准备关闭容器重启,结果报错 driver failed programming external connectivity on endpoint tomcat 重启一下docker,再启动容器就行了。 拷贝一个war 包试一下 好使 来源: https://www.cnblogs.com/zhuwansu/p/12296427.html

前端 Docker 镜像体积优化

£可爱£侵袭症+ 提交于 2020-02-11 20:27:01
如果 2019 年技术圈有十大流行词,容器化肯定占有一席之地,随着 Docker 的风靡,前端领域应用到 Docker 的场景也越来越多,本文主要来讲述下开源的分布式图数据库 Nebula Graph 是如何将 Docker 应用到可视化界面中,并将 1.3G 的 Docker 镜像优化到 0.3G 的实践经验。 为什么要用 Docker 对于前端日常开发而言,有时也会用到 Docker,结合到 Nebula Graph Studio (分布式图数据库 Nebula Graph 的图形界面工具)使用 Docker 主要基于以下考虑: 统一运行环境:我们的工具背后有好几个服务组合在一起,诸如不同技术栈的现有服务,纯前端的静态资源。 用户使用成本低:目前云服务还在开发中,想让用户对服务组合无感,能直接在本地一键启动应用并使用。 快速部署:团队本就提供有 Nebula镜像版本 实践,给了我们前端一些参考和借鉴。 Docker 镜像的构建 既然要使用 Docker 来承载我们的应用,就得将项目进行镜像构建。与所有 build 镜像类似,需要配置一份命名为Dockerfile 的文件,文件是一些步骤的描述,简单来说就是把项目复制到镜像里,并设置好启动方式: # 选择基础镜像 FROM node:10 # 设置工作目录 WORKDIR /nebula-web-console #

Docker 镜像

那年仲夏 提交于 2020-02-11 19:50:10
一、镜像是什么? 1、UnionFS(联合文件系统) Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem)。Union 文件系统是 Docker 镜像的基础。镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。 特性:一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录 2、Docker镜像加载原理: docker的镜像实际上由一层一层的文件系统组成,这种层级的文件系统UnionFS。 bootfs(boot file system)主要包含bootloader和kernel, bootloader主要是引导加载kernel, Linux刚启动时会加载bootfs文件系统,在Docker镜像的最底层是bootfs。这一层与我们典型的Linux/Unix系统是一样的,包含boot加载器和内核。当boot加载完成之后整个内核就都在内存中了,此时内存的使用权已由bootfs转交给内核,此时系统也会卸载bootfs。 rootfs

Dockerfile里的VOLUMES关键字

守給你的承諾、 提交于 2020-02-11 17:18:57
我有一个如下的Dockerfile: 定义了一个名为log的VOLUME, 这样该SpringBoot应用运行在Docker容器时,我可以用如下命令,进入Docker容器内部,到log文件夹下查看该SpringBoot应用运行时产生的日志: docker exec -it <容器id> /bin/sh SpringBoot应用的Application.properties文件: Dockerfile里的VOLUMES关键字,会在宿主机的目录/var/lib/docker/volumes下面生成一个文件夹: 该文件夹里的_data子文件夹,存放的就是我们用命令docker exec -it进入容器内部后看到的log文件夹下的数据。 要获取更多Jerry的原创文章,请关注公众号"汪子熙": 来源: CSDN 作者: 汪子熙 链接: https://blog.csdn.net/i042416/article/details/104258912

另一种办法直接在宿主机上的文件夹内查看Docker镜像运行的日志文件

回眸只為那壹抹淺笑 提交于 2020-02-11 12:41:12
我们可以用docker ps首先找到某个Docker容器的id,再使用关键字docker logs <容器id>打印出该容器产生的日志: 同样,在宿主机目录/var/lib/docker/containers下面,能发现一个文件夹,其前12位名称正好是我们在命令docker ps里查看到的容器id: 进入该文件夹,即可查找到以-json.log结尾的日志文件: 要获取更多Jerry的原创文章,请关注公众号"汪子熙": 来源: CSDN 作者: 汪子熙 链接: https://blog.csdn.net/i042416/article/details/104260000

Ubuntu搭建青岛大学开源OJ

只谈情不闲聊 提交于 2020-02-10 15:04:05
官方文档: https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0 我是用Ubuntu16.04 LTS搭的 ,当时在虚拟机上进行操作 , 搭建这个OJ之前 ,先在终端进行一些相关环境的配置! 一、下载一些软件、容器等 刚开始我直接复制上去, 报错了!(当时一脸懵逼) 这里可以拆开这些命令 , 一个一个的下载 sudo apt-get update // 更新 sudo apt-get install vim sudo apt-get install git sudo apt-get install curl sudo apt-get install pythonsudo apt-get install docker-compose 接下来是下载docker容器: 进入到 root 模式 , 然后cd ..退到根目录 , 这里最好是用root模式进行操作 , 不然后docker的一些操作 , 可能会出现权限不足的问题 sudo apt-get install docker.io "docker --version "能查看版本信息就成功了 下载好docker之后, 为docker换一个国内的源, 具体百度:docker换源 换好源了, 就是下载docker镜像 , 我这里是下ubuntu 的镜像 , 也还有centos