分布式进阶(二)Ubuntu 14

REPOSITORY   TAG         IMAGE ID      CREATED       VIRTUAL SIZE

srijan/custom1   latest         634855a43331   About a minute ago   277.4 MB

srijan@vboxtest:~/kishore$

这里,你会发现映像在默认情况下会安装apache2。不妨反复核对一下:

docker run -t -i srijan/apache2:webserver /bin/bash

现在,你可以进入新容器,而apache2和12.04ubuntu已预装。

主机名称的更改

假设你想更改主机名称,或者你想有一个定制的主机名称,比如我这里的server1.example.com。

我会使用:

sudo docker run -h ‘server1.example.com’ -t -i srijan/custom1 /bin/bash

它会得出映像容器,如下所示:

root@server1:/# hostname -f

server1.example.com

root@server1:/#

Docker其它的实用命令集锦

•pull(pull用于从注册中心拉取映像或软件库)

docker pull ubuntu

•commit(commit用于保存容器)

docker commit 73527b8b4261 srijan/apache2 8ce0ea7a1528

•cp(将文件/文件夹从容器的文件系统拷贝到主机路径。路径相对于文件系统的根目录。)

docker cp CONTAINER:PATH HOSTPATH

其中的CONTAINER是容器,将文件/文件夹从PATH拷贝到HOSTPATH

•start和stop容器:

docker start 4386fb97867d

docker stop 4386fb97867d

其中的4386fb97867d是你的容器编号

•export(将文件系统的内容作为tar存档文件导出到STDOUT)

docker export 4386fb97867d > latest.tar

•import(创建一个空的文件系统映像,将打包文件[.tar、.tar.gz、.tgz、.bzip、.tar.xz或.txz]的内容导入到里面,然后以可选方式标记它。)

docker import http://example.com/exampleimage.tgz

从本地文件导入:

通过pipe和stdin导入到docker。

cat exampleimage.tgz | sudo docker import - exampleimagelocal:new

从本地目录导入:

sudo tar -c . | sudo docker import - exampleimagedir

•history(显示映像的历史记录)

docker history [OPTIONS] IMAGE

sudo docker history ea7d6801c538

•images(它会显示映像)

docker images [OPTIONS] [NAME]

它后面跟一些选项,如下所示:

-a, --all=false 显示所有映像(默认情况下,过滤掉中间映像层)

-f, --filter=[]: 提供过滤器值(即“dangling=true”)

–no-trunc=false 不截短输出

-q, --quiet=false 只显示数字编号

•info(显示整个系统的信息)

srijan@vboxtest:~$ sudo docker info

Containers: 20

Images: 65

Storage Driver: aufs

Root Dir: /var/lib/docker/aufs

Dirs: 105

Execution Driver: native-0.2

Kernel Version: 3.13.0-30-generic

WARNING: No swap limit support

•inspect(返回关于容器/映像的低级信息)

docker inspect CONTAINER|IMAGE [CONTAINER|IMAGE…]

•kill(终止运行中的容器/发送SIGKILL,即指定信号)

docker kill [OPTIONS] CONTAINER [CONTAINER…]

•login(注册或登录docker注册中心服务器,如果未指定任何服务器,https://index.docker.io/v1/为默认值。)

docker login localhost:8080

它会登录到自托管注册中心。

•logs(读取容器的日志)

docker logs CONTAINER

•ps(列出容器)

docker ps [OPTIONS]

它有下列选项:

-a, --all=false 显示所有容器。默认情况下只显示运行中的容器。

–before=“” 只显示编号或名称之前创建的容器,包括非运行中的容器。

-l, --latest=false 只显示最近创建的容器,包括非运行中的容器。

-n=-1 显示n个最近创建的容器,包括非运行中的容器。

–no-trunc=false 不截短输出。

-q, --quiet=false 只显示数字编号。

-s, --size=false 显示大小。

–since=“” 只显示自编号或名称以来创建的容器,包括非运行中的容器。

•push(将映像或软件库推送到注册中心)

docker push NAME[:TAG]

•restart(它将重启运行中的容器)

docker restart [OPTIONS] CONTAINER [CONTAINER…]

•rm(它将删除一个或多个容器)

docker rm [OPTIONS] CONTAINER [CONTAINER…]

•rmi(它将删除一个或多个映像)

docker rmi IMAGE [IMAGE…]

•run(在新容器中运行命令)

docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

它有下列选项:

-a, --attach=[] 连接到stdin、stdout或stderr

-c, --cpu-shares=0 处理器共享(相对权重)

–cidfile=“” 将容器编号写入到文件

-d, --detach=false 分离模式:在后台运行容器,输出新的容器编号

–dns=[] 设置自定义DNS服务器

–dns-search=[] 设置自定义DNS搜索域

-e, --env=[] 设置环境变量

–entrypoint=“” 覆盖映像的默认入口点

–env-file=[] 在行分隔的文件中读取ENV变量

–expose=[] 暴露来自容器的端口,又不将端口发布到你的主机

-h, --hostname=“” 容器主机名称

-i, --interactive=false 让stdin保持开放,即便没有连接

–link=[] 将链接添加到另一个容器(名称:别名)

–lxc-conf=[] (lxc exec-driver only)添加自定义lxc选项–lxc-conf=“lxc.cgroup.cpuset.cpus = 0,1”

-m, --memory=“” 内存限制(格式:,其中unit = b, k, m or g)

–name=“” 为容器赋予名称

–net=“bridge” 为容器设置网络模式

‘bridge’:为docker网桥上的容器创建新的网络堆栈

‘none’:不为该容器创建任何网络机制

‘container:<name|id>’:重复使用另一个容器的网络堆栈

‘host’:使用容器里面的主机网络堆栈

-p, --publish=[] 将容器的端口发布到主机

格式:ip:hostPort:containerPort | ip::containerPort | hostPort:containerPort

(使用“docker port”即可看到实际映射)

-P, --publish-all=false  将所有暴露的端口发布到主机接口

–privileged=false 为该容器赋予扩展后的权限

–rm=false 容器退出后,自动删除容器(与-d不兼容)

–sig-proxy=true 将所有收到的信号代理输出到进程(即便处于非-tty模式下)

-t, --tty=false 分配伪终端

-u, --user=“” 用户名称或UID

-v, --volume=[] 绑定挂载卷(比如来自host:-v /host:/container,来自docker: -v /container)

–volumes-from=[] 从指定的一个或多个容器挂载卷

-w, --workdir=“” 容器里面的工作目录

•save(将映像保存到tar存档文件,默认情况下流式传输到stdout)

docker save IMAGE

•search(搜索docker索引,寻找映像)

docker search TERM

•tag(将映像标记到软件库)

docker tag [OPTIONS] IMAGE [REGISTRYHOST/][USERNAME/]NAME[:TAG]

•top(查询容器的运行中进程)

docker top CONTAINER [ps OPTIONS]

•version(显示docker版本信息)

srijan@vboxtest:~$ sudo docker version

[sudo] password for srijan:

Client version: 1.0.1

Client API version: 1.12

Go version (client): go1.2.1

Git commit (client): 990021a

Server version: 1.0.1

Server API version: 1.12

Go version (server): go1.2.1

Git commit (server): 990021a

如果系统中还不存在 Fedora Docker 镜像,这个命令会自动下载它,然后启动这个 Fedora 的 Docker 容器。

上面的命令会立即启动 Ubuntu container 容器(这是一个完美的容器!),然后它会提供一个 shell 提示符运行环境给你。现在开始你可以通过这个沙箱环境访问一个完整的 Ubuntu 系统了。

输入“exit”命令退出 Docker 容器。

导出镜像

sudo docker save IMAGENAME | bzip2 -9 -c>img.tar.bz2

导入镜像

sudo bzip2 -d -c <img.tar.bz2 | docker load

在主机节点上部署了Docker容器中,接着就需要虚拟出多个客户端容器。

3.Container 容器网络设置

Docker 使用 Linux 桥接技术与其他容器通信,以及连通外网。安装完 Docker 后你应该可以看到 docker0 这个网桥,这是 Docker 默认创建的。你创建的每个容器都会通过这个网桥连接到网络。

4.自定义 Linux 网桥

如果你想自定义网桥,你可以执行以下步骤。你可以在这个网桥后面分配一个子网,并为这个子网分配地址。下面的命令会为 Docker 子网分配 10.0.0.0/24 地址段:

sudo apt-get install bridge-utils

sudo brctl addbr br0

sudo ifconfig br0 10.0.0.1 netmask 255.255.255.0

然后在 /etc/default/docker.io 文件的 DOCKER_OPTS 变量里添加“-b=br0”选项,并重启 Docker 服务:

sudo service docker.io restart

到目前为止,任何创建的容器都会连上 br0 网桥,它们的 IP 地址会从 10.0.0.0/24 中自动分配(译注:在10.0.0.2到10.0.0.254之间随机分配)。

其他自定义设置

你可以通过 /etc/default/docker.io 文件的 DOCKER_OPTS 变量设置其他一些属性:

“-dns 8.8.8.8 -dns 8.8.4.4”: 为容器指定 DNS 服务器。

“-icc=false”: 将容器与其他容器隔离出来

我试着让大家更加熟悉docker,但愿本文会帮助各位进一步了解docker,并在自己的测试/生产环境中充分利用docker。

web浏览器中的javascript

window对象

  • 计时器

  • 浏览器定位和导航

  • 浏览历史

  • 浏览器和屏幕信息

  • 对话框

  • 错误处理

  • 作为window对象属性的文档元素

  • 29
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Hadoop伪分布式安装Ubuntu的步骤如下: 1. 安装Java环境:sudo apt-get install openjdk-8-jdk 2. 下载Hadoop:wget http://apache.mirrors.lucidnetworks.net/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz 3. 解压Hadoop:tar -xzvf hadoop-2.7.7.tar.gz 4. 配置Hadoop环境变量:在~/.bashrc文件中添加以下内容: export HADOOP_HOME=/path/to/hadoop-2.7.7 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 5. 配置Hadoop:在$HADOOP_HOME/etc/hadoop目录下,编辑core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml文件,具体配置可参考官方文档。 6. 格式化HDFS:hdfs namenode -format 7. 启动Hadoop:start-all.sh 8. 验证Hadoop是否正常运行:jps命令可以查看Hadoop进程是否启动成功。 以上就是Hadoop伪分布式安装Ubuntu的步骤,希望能对你有所帮助。 ### 回答2: Hadoop是一个分布式系统,它支持大规模数据处理和存储。在进行Hadoop伪分布式安装Ubuntu之前,您需要先安装Java。 下面是Hadoop伪分布式安装Ubuntu的步骤: 1. 安装SSH。Hadoop使用SSH协议来与集群中的其他节点通信。您需要安装SSH,以在多个节点之间进行通信。 输入以下命令来安装SSH: ``` sudo apt-get update sudo apt-get install ssh ``` 2. 安装Hadoop。在Ubuntu中,您可以通过以下命令来安装Hadoop: ``` sudo apt-get install hadoop ``` 3. 修改Hadoop配置文件。 在安装完成后,您需要修改一些配置文件以使Hadoop伪分布式运行起来。 a. core-site.xml 在Hadoop/conf/core-site.xml中添加以下内容: ``` <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> ``` b. hdfs-site.xml 在Hadoop/conf/hdfs-site.xml中添加以下内容: ``` <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.name.dir</name> <value>/var/lib/hadoop/hdfs/namenode</value> </property> <property> <name>dfs.data.dir</name> <value>/var/lib/hadoop/hdfs/datanode</value> </property> </configuration> ``` c. mapred-site.xml 在Hadoop/conf/mapred-site.xml.template中添加以下内容: ``` <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> ``` 将mapred-site.xml.template重命名为mapred-site.xml: ``` cp /usr/local/hadoop/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/etc/hadoop/mapred-site.xml ``` d. yarn-site.xml 在Hadoop/etc/hadoop/yarn-site.xml中添加以下内容: ``` <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> ``` 4. 格式化Hadoop文件系统。 在Hadoop/conf目录下,使用以下命令来格式化文件系统: ``` bin/hadoop namenode -format ``` 5. 启动Hadoop。 使用以下命令来启动Hadoop: ``` sbin/start-all.sh ``` 6. 检查Hadoop是否在运行。 在浏览器中输入以下地址即可访问Hadoop: ``` http://localhost:50070/ ``` 现在,您已经成功地将Hadoop伪分布式安装到了Ubuntu上。您可以通过添加更多的节点来扩展您的Hadoop集群,以进行更大规模的数据处理和存储。 ### 回答3: Hadoop是一个开源的分布式计算框架,用于处理海量数据。对于初学者来说,伪分布式安装Ubuntu可以帮助他们了解和学习Hadoop的基本概念和操作。以下是Hadoop伪分布式安装Ubuntu的步骤: 1.安装Ubuntu操作系统 首先,需要在计算机上安装Ubuntu操作系统。在安装期间,需要选择安装openssh-server和默认的Java Development Kit(JDK)软件包,以便后续安装和配置。 2.安装Hadoop 安装完成后,需要安装Hadoop。在终端中输入以下命令以安装Hadoop: sudo apt-get install hadoop 3.配置Hadoop 配置Hadoop需要编辑hadoop-env.sh文件,添加JAVA_HOME环境变量以指向JDK路径。然后,修改core-site.xml文件中的dfs.namenode.name.dir和dfs.datanode.data.dir以设置Hadoop存储目录。此外,还需要编辑hdfs-site.xml文件中的dfs.replication和dfs.blocksize来设置数据的副本数和块大小。 4.启动Hadoop集群 完成了Hadoop配置后,可以启动Hadoop集群。在终端输入以下命令以启动Hadoop集群: start-dfs.sh start-yarn.sh 在启动过程中,可以通过jps命令来检查程序是否启动。 5.运行Hadoop应用程序 启动Hadoop后,可以编写和运行Hadoop应用程序。可以使用MapReduce编写Hadoop应用程序。可以通过创建一个Java类来实现MapReduce功能,并将其打包成jar文件。使用如下命令提交Hadoop应用程序: hadoop jar application.jar application.Driver input output 以上就是Hadoop伪分布式安装Ubuntu的完整步骤。通过这个过程,初学者可以学习到如何配置Hadoop并运行应用程序,从而更好地理解和使用这个强大的分布式计算框架。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值