怎样使用Docker帮助

作者&投稿:伊史 (若有异议请与网页底部的电邮联系)
大家都在怎么使用 docker~

Docker的开发环境
在深入Docker和IDE细节之前,让我们看看,为什么得把Docker放进必需的开发工具列表中。
构建系统
首先,Docker能够使我们的构建环境便携,可重复以及保持隔离。举个例子:你需要使用5.1版本的gcc工具构建一个C文件。 所有需要做的就是运行以下命令(当然,这里假定你已经安装了Docker):
docker run gcc:5.1 gcc -o helloworld helloword.c
神奇的是,你可以在任何地方运行它,你不必理会依赖的库文件、之前的冲突或者gcc的安装。只要它能在你的笔记本上跑起来,也就可以在集成服务器上运行了。
运行环境
同样适用于运行时环境。如果你只想在tomcat 8上运行Java Web应用程序,可以只使用:
docker run tomcat:8 -v HelloWorld.war:/usr/local/tomcat/webapps/Helloworld.war
同样,你不用担心依赖性,平台配置或Linux发行版的差异,这些Docker都能搞定。
Docker和IDE
好吧,这应该很清楚,为什么现在Docker对开发真的非常有用。就像我们描述的,你可以使用喜欢的shell来执行这些命令。 问题是,开发者都是懒惰的。这意味着,如果我们在最喜欢的IDE中码字,就不希望跑到IDE外面来使用Docker。我们想直接从IDE中运行容器。
不幸的是,现在主要IDE都不支持Docker。
所以,你是不是很想看到IDE中集成了Docker?
你想要在容器中运行IDE?
docker run eclipse
汗,这不是容器的使用方式。在容器里面运行图形化应用程序,太过复杂也缺少可移植性。
你想要从IDE中运行容器?
是哦!我们希望能看到对Dockerfile,Docker Compose YML文件的支持,IDE构建系统和容器内的运行时环境。让我们来看看详细的需求:
Dockerfile的支持
Dockerfile支持应该带有语法高亮显示,自动补全(当按下Ctrl+SPACE键,dockerfile指令会自动弹出来)和语法验证(在执行 docker build 之前,IDE要能指出语法错误)
Docker Compose YML文件的支持
更有意思的是对Docker Compose YML文件的支持。这将允许定义容器间的关系,如Link和Volume,也可以从你的编辑器一次启动多个容器。真的很酷!
IDE构建系统
当然,你需要得到IDE中运行容器的支持。具体地,容器可以构建你的源文件。如果利用Docker多种语言特性,这可能变得更容易。
IDE运行时环境
我们期待IDE的最后一项功能,能够启动容器的运行时环境。
doclipser简介
根据上述四个功能,我们构建了doclipser,一个Eclipse插件来编辑,构建和运行Docker容器。
doclipser支持Dockerfile:语法高亮显示,自动补全和语法验证。虽仍没有支持Docker Compose YML文件,但已经可以执行一些Docker的命令,来构建源文件或启动运行时环境。
doclipser不是唯一的Docker Eclipse插件。这里有一个很优秀的Eclipse Docker工具集(以下简称:EDT),由JBoss维护且和Eclipse的Linux工具包一起分发。 即使它们都能使大家在IDE中使用Docker,doclipser和EDT还是两种不同的方法:
doclipser通过对Dockerfiles的支持,专注于编辑和运行容器,在未来的版本中,将提供对Docker Compose YML文件的支持。
EDT对Docker镜像和容器拥有更高级的管理方式,但缺乏对Dockerfiles的支持。
domeide.github.io

1.学习Docker,如果没有云计算的基本知识,以及内核的基本知识,那么学习并理解起来会稍吃力。作为容器,Docker容器的优势在哪,不足在哪,最好了解容器的实现是怎样的(简单了解);拥有镜像管理,Docker又该如何体现软件开发,集成,部署,发布,再迭代的软件生命周期管理优势。以上两点我认为最为关键,有这两方面的认识势必会对之后的工作帮助巨大。

2.关于学习资源,起码的硬件设施总是要有的。Docker及其生态的发展很快,不使用纯理论肯定收效甚微。另外,资源还包括Docker官方,各大电子媒体平台,技术论坛,开源社区等,往往大拿的观点能点破自己的困惑,或者让自己知道哪方面的认识还很欠缺,以及让自己少走很多的弯路。

3.个人兴趣的话,归结为强扭的瓜不甜。起码应该认同Docker的设计价值,以及Docker的未来潜力,当然有依据的批判Docker并带动大家的思考,也是深切关注的表现。

4.个人发展方向,我认为如果需要把Docker当作软件生命周期管理工具的话,那用好Docker最为重要,API及命令的理解与使用是必需的。如果专注系统设计方面,那么除Docker以上的知识与经验之外,若有Docker源码的学习与理解,那么这些肯定会让你的Docker水平提高一个层次。

一 直接输入docker命令来查看Docker客户端的所有命令选项。

[root@localhost ~]# docker

Usage: docker [OPTIONS] COMMAND [arg...]

docker [ --help | -v | --version ]

A self-sufficient runtime for containers.

Options:

--config=~/.docker              Location of client config files

-D, --debug                     Enable debug mode

-H, --host=[]                   Daemon socket(s) to connect to

-h, --help                      Print usage

-l, --log-level=info            Set the logging level

--tls                           Use TLS; implied by --tlsverify

--tlscacert=~/.docker/ca.pem    Trust certs signed only by this CA

--tlscert=~/.docker/cert.pem    Path to TLS certificate file

--tlskey=~/.docker/key.pem      Path to TLS key file

--tlsverify                     Use TLS and verify the remote

-v, --version                   Print version information and quit

Commands:

attach    Attach to a running container

build     Build an image from a Dockerfile

commit    Create a new image from a container's changes

cp        Copy files/folders between a container and the local filesystem

create    Create a new container

diff      Inspect changes on a container's filesystem

events    Get real time events from the server

exec      Run a command in a running container

export    Export a container's filesystem as a tar archive

history   Show the history of an image

images    List images

import    Import the contents from a tarball to create a filesystem image

info      Display system-wide information

inspect   Return low-level information on a container, image or task

kill      Kill one or more running containers

load      Load an image from a tar archive or STDIN

login     Log in to a Docker registry.

logout    Log out from a Docker registry.

logs      Fetch the logs of a container

network   Manage Docker networks

node      Manage Docker Swarm nodes

pause     Pause all processes within one or more containers

port      List port mappings or a specific mapping for the container

ps        List containers

pull      Pull an image or a repository from a registry

push      Push an image or a repository to a registry

rename    Rename a container

restart   Restart a container

rm        Remove one or more containers

rmi       Remove one or more images

run       Run a command in a new container

save      Save one or more images to a tar archive (streamed to STDOUT by default)

search    Search the Docker Hub for images

service   Manage Docker services

start     Start one or more stopped containers

stats     Display a live stream of container(s) resource usage statistics

stop      Stop one or more running containers

swarm     Manage Docker Swarm

tag       Tag an image into a repository

top       Display the running processes of a container

unpause   Unpause all processes within one or more containers

update    Update configuration of one or more containers

version   Show the Docker version information

volume    Manage Docker volumes

wait      Block until a container stops, then print its exit code

Run 'docker COMMAND --help' for more information on a command.

二 通过命令docker command --help更深入的了解指定的Docker命令使用方法。

[root@localhost ~]# docker version --help

Usage:docker version [OPTIONS]

Show the Docker version information

Options:

-f, --format string   Format the output using the given go template

--help            Print usage



https://mbd.baidu.com/newspage/data/landingshare?context=%7B%22nid%22%3A%22news_9712805550544478218%22%2C%22sourceFrom%22%3A%22bjh%22%7D 或许对你有帮助


docker使用教程
5、要理解Docker,首先得体会百万程序员经常遇到的横跨开发、测试和运维的MatrixfromHell问题,即开发人员、测试人员和运维人员分别从零开始搭建应用程序开发环境和运行时环境的问题。云计算核心技术Docker教程:Docker使用网桥网络1、使用docker0网桥,docker0的默认网段是170,网关地址为171,通过bridge模式启动的...

docker部署seafile并使用远程数据库
步骤如下:1、准备远程数据库:确保已经设置好并可以访问远程数据库,包括数据库的主机名、端口、用户名和密码信息。2、下载并配置Seafile镜像:从DockerHub下载Seafile镜像,通过环境变量或配置文件设置远程数据库的连接信息。3、启动Seafile容器:运行Docker命令启动Seafile容器,使用适当的参数将远程数据库...

如何使用Docker 进行Java 开发
使用Docker 进行Java 开发步骤:1、准备工作 现在最流行的是选择Spark,它是一个基于Java 8的极小的框架。Spark使用Maven作为构建工具。2、源代码和配置文件 在这个例子中你要增加三个文件:Maven的配置文件: pom.xml 一个Java类:Hello.java 一个Dockerfile 例子:hello.java:package sparkexample;impo...

如何使用Docker部署一个Go Web应用程序
安装 beego 包和 bee 工具。 beego 包将在应用程序中使用。 bee 工具用语在开发中再现地重新加载咱们的代码。第三行,EXPOSE 8080 在开发主机上利用容器为应用程序开放8080端口。最后一行,CMD ["bee", "run"]使用bee命令启动应用程序的在线重新加载。步骤二 - 构建image 一旦创建了Docker file,...

docker在web开发中得使用流程是怎样的
sudo docker build -t pobaby\/java .可以看到已经生成了一个镜像名为pobaby\/java的镜像,接下来检验一下该镜像能否正常使用,通过该镜像启动一个容器,然后看看java命令是否能执行。2、创建resin镜像 这里以使用的webserver是resin,没有使用tomcat,以此说明:使用刚才创建的pobaby\/java的镜像为基础镜像来...

如何使用docker进行java入门级开发
现在有非常多的Java Web框架,但我这里并不打算使用它们。我只想要的是一个小的框架所以我选择了Spark,它是一个基于Java 8的极小的框架。Spark使用Maven作为构建工具。源代码和配置文件 在这个例子中你要增加三个文件:Maven的配置文件: pom.xml 一个Java类:Hello.java 一个Dockerfile 如果有读者等...

超值一篇分享,Docker:从入门到实战过程全记录
docker容器与宿主机是隔离的,要想让容器内的程序能访问宿主机上的文件,需要通过-v参数将宿主机的文件挂载到容器中。 比如我们在宿主机上有一个hello.py,可以打印hello,想要在python容器中执行,就需要进行挂载。-v后还需要接两个参数,分别是宿主机的目录和容器内的目录,两者使用:分隔,路径必须都是绝对路径。

如何在 Windows 上通过 Kitematic 使用 Docker
如果我们想切换到命令行接口并用它管理 docker,这里有个称为 Docker CLI 的按钮,它会打开一个 PowerShell,在里面我们可以执行 docker 命令。Docker CLI PowerShell 现在,如果我们想配置我们的容器并执行类似更改容器名称、设置环境变量、指定端口、配置容器存储以及其它高级功能的任务,我们可以在容器设置...

Ubuntu Docker 安装和使用
启动Docker CE 建立docker 用户组 默认情况下,docker 命令会使用Unix socket 与Docker 引擎通讯。而只有root 用户和docker 组的用户才可以访问Docker 引擎的Unix socket。出于安全考虑,一般Ubuntu系统上不会直接使用root 用户。因此,更好地做法是将需要使用docker 的用户加入docker用户组。注销当前用户,...

如何使用docker来创建container
检测 docker 镜像 ?1 2 3 4 [root@karan-ws ~]# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE docker.io\/centos latest fd44297e2ddb 5 weeks ago 215.7 MB [root@karan-ws ~]创建 Docker 容器 ?1 2 3 [root@karan-ws ~]# docker create -ti ...

潍城区18981761072: 什么是Docker?怎么用 -
穰狠博尔: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app).几乎没有性能...

潍城区18981761072: docker下容器怎么执行命令? -
穰狠博尔: Docker中我们一般会有两种执行命令的方式,一种是直接进入容器的命令行,在终端执行并查看结果,一种是在后台执行,并不会在终端查看结果.1、进入容器命令行 su root docker run -i -t ubuntu:16.04/bin/bash#或者执行下面这句docker run ...

潍城区18981761072: 如何利用docker快速构建MySQL主从复制环境
穰狠博尔: Docker容器虚拟化的好处 Docker项目的发起人和Docker Inc.的CTO Solomon Hykes认为,Docker在正确的地点、正确的时间顺应了正确的趋势—即高效地构建应用.现在开发者需要能方便地创建运行在云平台上的应用,也就是说应用必须能够...

潍城区18981761072: 上如何安装Docker及基本用法 -
穰狠博尔: VMware Workstation:9.0 操作系统:centos6.5 [root@dockerServer Desktop]# uname -a Linux dockerServer 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux docker版本:[root@dockerServer ...

潍城区18981761072: linux docker什么用 -
穰狠博尔: Linux当中的Docker其实就是个容器,这个容器里面运行的就是应用系统,比如WEB、DATABASE,这些应用.容器和虚拟机有点类似,都是独立存在运行的,但是虚拟机是逻辑上独立的运行的,而Docker是通过共享1个OS系统,然后运行多个不同的独立应用.而这些应用运行环境包括所有的库和链接文件都存放在Docker里面. 说了这么久,我这里举个例子,好让大家理解Docker.Docker可以理解为通过1台电脑,把绿色的应用软件放在U盘上,然后直接在U盘运行软件.如果需要多个不同的应用,就用多个U盘插到电脑,并运行. Docker的好处是简化了开发人员大量部署测试环境.还有大量的应用快速部署.

潍城区18981761072: 如何使用Dockerfile构建镜像 -
穰狠博尔: docker越来越炙手可热,如果你的团队已经准备开始使用docker,那么私有仓库是必不可少的东西,首先是可以帮助你加快从服务器pull镜像的速度,其次也可以帮助你存放私有的镜像,本文主要为大家介绍如何从公用服务器上讲开放的images...

潍城区18981761072: 如何使用docker来制作我现在正在使用的系统的镜像 -
穰狠博尔: 选择 Ubuntu 官方的 14.04 版本为我们依赖的系统镜像. dockerfile FROM ubuntu:trusty因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步.如果使用 DaoCloud 的镜像源...

潍城区18981761072: docker的好处,为什么使用docker来部署服务器 -
穰狠博尔: Docker的使用 Docker是一个轻量级的虚拟化解决方案,你可以实现秒级的虚拟机启动、非常轻量级的虚拟化.个人使用理解看来,它可以实现一个类似于版本管理Git一样的轻量化的状态保存. Docker有两个非常重要的概念: 镜像和容器. 镜...

潍城区18981761072: 如何使用Spring Cloud -
穰狠博尔: 使用Spring Cloud构建e79fa5e98193e58685e5aeb931333339663431实际的微服务架构.基本概念:使用Docker进行集成测试混合持久化微服务架构服务发现API网关Docker使用Docker对每一个服务进行构建和部署.使用Docker ...

潍城区18981761072: 怎么使用windows中7的bitl ocker功能 -
穰狠博尔: Docker引擎使用了一个定制的Linux内核,所以要在Windows下运行Docker需要用到一个轻量级的虚拟机(vm),使用Windows Docker客户端以控制Docker引擎,来创建,运行和管理Docker容器(关于Docker引擎,容器等具体概念请参考官网...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网