ubuntu虚拟机mongodb启动和端口映射

环境:

  ubuntu 14.04.1

  mongodb v3.4.1

  虚拟机连接模式为nat连接

一、mongodb启动问题

更新了一下内核之后,在运行mongodb的时候出现了29 Data directory /data/db not found.的错误,时间久了不记得安装的配置了orz

查了一些资料,这里是因为mongodb默认的dbpath是/data/db,这个目录只能用root用户创建,创建后在权限上也比较麻烦,所以这里采用

sudo mongod --dbpath /var/lib/mongodb/data/db,启动时带参数,将dbpath设定到其它目录

如果启动失败可能是在/var/lib/mongodb/或者/var/lib/mongodb/data/db/下有.lock文件,用root用户删掉就好

启动成功可以在进程看到

二、端口映射

mongodb启动成功后运行node项目,端口为3003

端口映射使用iptables命令

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3003

-t:选择要操作的表

-A:添加规则名字,PREROUTING用于目标地址转换

-p:指定要匹配的数据包类型

--dport:请求的端口

-j:动作,REDIRECT表示重定向、映射、透明代理

--to-port:要转到的端口

添加成功后使用 sudo iptables -t nat -L 查看

我本地主机是win7,在hosts文件添加一条解析(直接用ip也能访问

浏览器输入www.ubuntu.ameng.com即可访问

原文地址:https://www.cnblogs.com/amenging/p/8358649.html

时间: 2024-11-08 22:47:38

ubuntu虚拟机mongodb启动和端口映射的相关文章

局域网win7系统:虚拟机vmware kali 做端口映射

1.首先在vmware窗口点击“编辑”,选择“NAT 模式” 再进入"NAT 设置“>添加>设置 (这是虚拟机的设置) 192.168.0.100是我虚拟机的ip地址,在kali终端 可通过ifconfig查询 设置虚拟机外部端口8080映射到kali系统的8086端口 点击确认,虚拟机vmware的系统kali的端口映射就做好了. 2.设置win7系统打开8080端口. 控制面板>系统和安全>Windows防火墙>高级设置>入站规则(右键选择,新建入站规则&

ubuntu下mongodb启动脚本

run-mongodb.sh #!/bin/bash mongod --dbpath /usr/local/mongodb/data1 --logpath /usr/local/mongodb/log1/mongodb.log chmod +x run-mongodb

Docker 核心概念、安装、端口映射及常用操作命令,详细到令人发指。

Docker简介 Docker是开源应用容器引擎,轻量级容器技术. 基于Go语言,并遵循Apache2.0协议开源 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的Linux系统上,也可以实现虚拟化 容器完全使用沙箱技术,相互之间不会有任何接口 类似于虚拟机技术(vmware.vitural),但docker直接运行在操作系统(Linux)上,而不是运行在虚拟机中,速度快,性能开销极低 白话文,简介就是: Docker支持将软件编译成一个镜像,然

Docker运行MongoDB及Redis及ssh端口映射远程连接

Docker运行MongoDB及Redis及ssh端口映射远程连接 本节内容简介 在本实验里我们将通过完成 MongoDB 和 Redis 两个容器来学习Dockerfile及Docker的运行机制. 本节中,我们需要依次完成下面几项任务: MongoDB 的安装及配置 Redis 的安装及配置 Dockerfile 的编写 从 Dockerfile 构建镜像 本次实验的需求是完成 Dockerfile,通过 Dockerfile 创建 MongoDB 或 Redis 应用.Dockerhub上

VMware NAT端口映射外网访问虚拟机linux

本文目的: 一. SSH连接 二. 访问HTTP VMware Workstation提供了两种虚拟机上网方式,一种bridge,一种NAT,bridge可以获得公网地址,而NAT只能是内网地址了. NAT相当于把主机当成了一个NAT转换器,我们可以添加端口映射,使得外网可以访问利用NAT上网的虚拟机. 主机环境:    Win7 公网IP:         128.206.82.47 虚拟机版本:  VMware Workstation 10 虚拟机系统:  CentOS 6.5 虚拟机IP:

VMware虚拟机中设置端口映射(转载)

VMware Workstation提供了两种虚拟机上网方式,一种bridge,一种NAT,bridge可以获得公网地址,而NAT只能是内网地址了. NAT相当于把主机当成了一个NAT转换器,我们可以添加端口映射,使得外网可以访问利用NAT上网的虚拟机. 下面举两个例子 使用的主机环境为 主机:win7 + vmware workstation 8  公网IP: 118.229.240.94 虚拟机:: Fedora 8  内网IP: 192.168.126.141 例1:在虚拟机内搭建http

CentOS7 虚拟机docker安装宝塔及端口映射

启动docker服务 systemctl start docker 列出所有的容器 ID docker ps -aq [[email protected] ~]# docker pull centos [[email protected] ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/nginx latest 5a9061639d0a 5 days ago 126 MB docker.io/centos late

VM NAT模式端口映射,让外网访问内网的虚拟机

情景: 物理机外网为IP为A 虚拟机的NAT 内网ip为B 现在想通过ip A访问内网ip为B的虚拟机. 原理: web服务器使用80端口,所以只要做80端口的映射就好了. SSH的默认端口是22,也要做映射才能SSH登陆. 两者均是基于TCP协议. 先查看虚拟机的内网ipB: ifconfig 然后编辑VM的虚拟网络: 编辑->虚拟网络编辑器 1.点击更改设置 2.选中NAT模式后,点击NAT设置 添加端口转发: 主机端口:物理机的端口 做80和22端口的映射 这里虚拟网络就设置好了. 然后在

linux主机下的Vmware Workstation配置NAT设置 端口映射-Ubuntu为例

最近折腾虚拟机,由于是在linux下进行的,而相关资料比较少,所以遇到了一些问题. 一个就是配置vmware workstation的NAT设置.因为一般来说,NAT可以共享主机的ip,从而能以主机身份访问互联网,不需要单独为虚拟机配置IP了,另外,vmware workstation中的NAT设置里是可以进行端口转发的,所以添加了端口映射后,是很容易通过宿主机的某个端口访问到虚拟机的资源.我觉得是非常实用便捷的.所以配置虚拟机首选NAT方式.我是在linux宿主机上配置一台linux虚拟机.