Ubuntu Snappy核心操作系统上的幽灵博客

时间:2015-08-22 19:01:03

标签: docker vagrant ubuntu-11.10 ghost-blog ghost

我使用以下命令在Snappy VM中运行Ghost Blog:   vagrant init ubuntu / ubuntu-15.04-snappy-core-stable   流浪汉&&流浪汉ssh

docker pull ghost   docker run -d -p 80:2368 -v / home / ubuntu / blog --name hello-world ghost

现在博客正在运行,如何从外部世界查看它?

2 个答案:

答案 0 :(得分:1)

马丁 - 你对“外面的世界”是什么意思?

看起来您使用vagrant在开发计算机上启动了虚拟机,然后在该虚拟机上启动了一个docker容器。

你的docker命令发布端口ghost侦听(2368)到docker正在侦听的机器的端口80。这不是你的开发机器 - 它是流浪汉虚拟机!这意味着您无法在主机上运行localhost来查看您的博客。 (尽管如此,您可以使用该地址从虚拟机内部ping它...)

您需要做的是找到您的流浪汉虚拟框的IP地址。 SSH使用vagrant ssh。然后运行ifconfig并获取您的包装箱的IP地址。 (你需要在这里知道一点 - 我的流浪盒实际上在eth1而不是eth0上显示了这一点)

您可以通过几种方式使这更容易。你可以将ip地址硬编码到vagrantfile中......

ip_address = "192.168.33.17"
Vagrant.configure("2") do |config|

  config.vm.network :private_network, ip: ip_address

此外,您可以使用vagrant插件'hostmanager'在您的计算机上指定/ etc / hosts条目,该条目允许您将浏览器指向硬编码地址,并且vagrant将始终将其指向正确的计算机。如果已安装(vagrant plugin install vagrant-hostmanager),则可以使用

修改vagrantfile
  config.hostmanager.enabled = true
  config.hostmanager.manage_host = true
  config.vm.define project_name do |node|
    node.vm.hostname = "myghostblog.com"
    node.vm.network :private_network, ip: ip_address
    node.hostmanager.aliases = [ "www.myghostblog.com" ]
  end

如果你的意思是想要从公共互联网上看到你的博客,那么你不想在没有大量知识的情况下在你的私人电脑上做这些事情(否则你就不需要了)问:))。

答案 1 :(得分:0)

我编辑了Vagrantfile并启用了转发端口映射:config.vm.network" forwarded_port",guest:80,host:8080,然后vagrant reload和vagrant ssh,现在我登录了Snappy VM,再次启动ghost,docker run -d -p 80:2368 -v / home / ubuntu / blog --name test ghost,然后做端口映射:输入:docker port be2f474bb8c9,显示2368 / tcp - > 0.0.0.0:80此时,我希望浏览localhost:8080并查看我的幽灵博客。 谢谢你们两个!