阿里云部署Docker(2)

简介:

之前有一篇文章讲过在阿里云中安装Docker,相对来说那个是安装,但是安装完之后我们一般会碰到问题。

今天我给大家记录一下我的新的解决过程。

环境还是ubuntu12.04,假设我们已经把内核升级到了3.8以上。

便捷安装Docker命令:

curl -s https://get.docker.io/ubuntu/ | sudo sh

这样一条指令就完成了安装。

直接执行如下命令:

sudo docker run -i -t ubuntu /bin/bash

不行,会报错。

如下:

root@iZ28ikebrg6Z:~# docker run -i -t ubuntu /bin/bash
2014/10/15 21:19:19 Cannot connect to the Docker daemon. Is 'docker -d' running on this host?
好,我们的守候进程没有起来。
于是我们输入命令:

root@iZ28ikebrg6Z:~# docker -d
出现如下错误:

root@iZ28ikebrg6Z:~# docker -d
2014/10/15 21:21:01 docker daemon: 1.2.0 fa7b24f; execdriver: native; graphdriver: 
[be668f49] +job serveapi(unix:///var/run/docker.sock)
[info] Listening for HTTP on unix (/var/run/docker.sock)
[be668f49] +job init_networkdriver()
[be668f49.init_networkdriver()] creating new bridge for docker0
Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
[be668f49] -job init_networkdriver() = ERR (1)
2014/10/15 21:21:01 Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'

这个时候,很多人很困惑,搜索很多解决方法而不得解决,我也是,我试过很多方法,不过,我没记录下来,抱歉,现在我只知道正确的解决方法了

它来自http://segmentfault.com/q/1010000000438713

大家都在搜如何在阿里云里面部署Docker

里面有一个人说:

改下路由表就可以了:

sudo route del -net 172.16.0.0 netmask 255.240.0.0

反正其他的我都试烂了,所以,也不介意多试这个。


root@iZ28ikebrg6Z:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         115.28.83.247   0.0.0.0         UG    0      0        0 eth1
10.0.0.0        10.163.191.247  255.0.0.0       UG    0      0        0 eth0
10.0.3.0        *               255.255.255.0   U     0      0        0 lxcbr0
10.163.176.0    *               255.255.240.0   U     0      0        0 eth0
115.28.80.0     *               255.255.252.0   U     0      0        0 eth1
172.16.0.0      10.163.191.247  255.240.0.0     UG    0      0        0 eth0
192.168.0.0     10.163.191.247  255.255.0.0     UG    0      0        0 eth0
root@iZ28ikebrg6Z:~# route del -net 172.16.0.0 netmask 255.240.0.0
root@iZ28ikebrg6Z:~# docker -d
2014/10/15 21:45:41 docker daemon: 1.2.0 fa7b24f; execdriver: native; graphdriver: 
[12f8faab] +job serveapi(unix:///var/run/docker.sock)
[info] Listening for HTTP on unix (/var/run/docker.sock)
[12f8faab] +job init_networkdriver()
[12f8faab.init_networkdriver()] creating new bridge for docker0
[12f8faab.init_networkdriver()] getting iface addr
[12f8faab] -job init_networkdriver() = OK (0)
2014/10/15 21:45:41 WARNING: Your kernel does not support cgroup swap limit.
[info] Loading containers: 
[info] : done.
[12f8faab] +job acceptconnections()
[12f8faab] -job acceptconnections() = OK (0)
[info] POST /images/create?fromImage=ubuntu&tag=
[12f8faab] +job pull(ubuntu, )

嘿嘿,成功了。

至少没报错。好,守候进程算是起来了,不过,我们还是要验证一下能不能真正的用。

新开一个终端,输入:

root@iZ28ikebrg6Z:~# docker pull ubuntu
Pulling repository ubuntu
a9561eb1b190: Pulling dependent layers 
3db9c44f4520: Downloading [====================>                              ] 26.42 MB/63.51 MB 14m3s
c5881f11ded9: Pulling dependent layers 
195eb90b5349: Pulling dependent layers 
2185fd50e2ca: Pulling dependent layers 
463ff6be4238: Pulling dependent layers 
9cbaf023786c: Pulling dependent layers 
511136ea3c5a: Download complete 
6cfa4d1f33fb: Download complete 

拉取成功了。有不会报错了。好了,至此,我们可以正常的操作Docker了。哈哈。

root@iZ28ikebrg6Z:~# docker run ubuntu /bin/echo "hello"
hello
root@iZ28ikebrg6Z:~# docker run -i -t ubuntu /bin/bash
root@9fbad8b573d3:/# 

而当你试图使用没有拉取过的镜像的时候,它会自动的帮你去拉取。例如,你突然使用centos。

root@iZ28ikebrg6Z:~# docker run centos /bin/echo 'hello world'
Unable to find image 'centos' locally
Pulling repository centos


总结一下,最重要的呢,首先,记住上一篇文章中的内核,安装源什么的不要搞错。然后阿里云的特殊性,记得改路由表。






相关文章
|
26天前
|
人工智能 API 数据安全/隐私保护
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
NextChat 是一个可以在 GitHub 上一键免费部署的私人 ChatGPT 网页应用,支持 GPT3、GPT4 和 Gemini Pro 模型。该项目在 GitHub 上获得了 63.8k 的 star 数。部署简单,只需拉取 Docker 镜像并运行容器,设置 API Key 后即可使用。此外,NextChat 还提供了预设角色的面具功能,方便用户快速创建对话。
114 22
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
|
1月前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
108 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
27天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
27天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
54 1
|
1月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
65 2
|
1月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
37 3
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
333 3
|
2月前
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
137 1
|
27天前
|
前端开发 开发者 Docker
深入探索Docker Compose:简化多容器应用的部署
深入探索Docker Compose:简化多容器应用的部署
59 0
|
2月前
|
运维 Kubernetes 监控
掌握Docker容器化技术:构建、部署与管理的高效实践
【10月更文挑战第14天】掌握Docker容器化技术:构建、部署与管理的高效实践
60 0