最近,由于工作原因,在Azure上的Ubuntu虚拟机中安装了Open edX 实例,安装过程遇到了不少问题, 在从网上找答案的过程中,学习到了不同的知识。

注:若Ubuntu虚拟机Setup在Global Azure上, 进行Open edX安装过程会比较顺利, 若Setup在China Azure上, 我至今没有安装成功过。

创建SSH的身份验证证书文件

使用 putty(http://www.putty.org)工具连接Ubuntu虚拟机, 提供了两种选择进行身份验证:用户名+密码; 使用SSH证书。我们可以借助于openssl.exe进行证书的创建, 这个工具是伴随着git(http://git-scm.com/download/)安装包而安装的。

步骤如下:

1. 打开命令行控制台窗口。

2. 输入以下命令,并回车:

"\Program Files (x86)\Git\bin\openssl.exe" req -x509 -nodes -days 365 -newkey rsa:2048 -keyout myPrivateKey.key -out myCert.pem -config "c:\Program Files (x86)\Git\ssl\openssl.cnf" 

3. 根据提示,输入您的信息。

4. 命令运行完成后,将会创建两个文件:myPrivateKey.keymyCert.pem

5. 将基于SSH的私有密钥转换成基于RSA的私有密钥。

6. 输入以下命令,并回车:

"C:\Program Files (x86)\Git\bin\openssl.exe" rsa -in myPrivateKey.key -out myPrivateRSAkey.rsakey 

7. 命令运行完成后,将会创建文件:myPrivateRSAKey.rsakey

使用puttygen(http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)工具,生成一个.ppk文件,这个文件将是putty要使用的证书文件。

1. 运行puttygen.exe

2. 单击Load。

3. 浏览到文件myPrivateRSAKey.rsakey,或许你需要将浏览窗口过滤设置为*.*。

4. 单击Open, OK。

5. 单击Save Private Key,并将文件保存为MyPrivateKey.ppk

在国际版Azure中配置Ubuntu虚拟机

在这个步骤中,要注意的是:

1. 选择Ubuntu的版本为12.04 LTS。

2. 选择使用SSH密钥进行身份验证,并选择myCert.pem文件。

3. 添加两个edX使用的终结点: LMS - TCP:80; Studio - TCP:18010。

配置Ubuntu虚拟机

1. 运行putty.exe

2. 在Session中,在Host Name中,将虚拟机的DNS名称粘贴进去

3. 展开Connection, SSH, 单击Auth。

4. 在Private key file for authentication:中,选择myPrivateKey.ppk文件。

5. 单击Open以打开命令终端。

6. 使用azureuser登录。

7. 输入以下命令,用于对Ubuntu虚拟机进行更新,运行完成后,重启:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo reboot

安装Open edX

1. 重新运行putty.exe,登录到Ubuntu虚拟机。

2. 输入以下命令,并按回车:

screen -d -RR 

3. 运行一键安装命令

OPENEDX_RELEASE=named-release/master wget https://raw.githubusercontent.com/edx/configuration/master/util/install/vagrant.sh -O - | bash 

4. 等待安装过程完成,这个过程比较漫长。

安装结果有可能是Fail,不要着急, 先在浏览器中验证edX instance是否可用:

1. 打开浏览器,输入http://<dns name>:18010/

2. 单击Sign In,使用verified@example.com, 密码edx。

如果可以登录,那么Open edX安装过程虽然失败了, 但是Open edX主要功能还是可以使用。

如果无法登录,请考虑重新运行open edx的安装,这里建议使用手动安装。

手动安装步骤如下:

注:若是自动安装失败以后, 请先删除已拷贝的文件:

删除/var/tmp下的configuration文件

cd /var/tmp

rm -rf configuration

安装步骤:

1. 执行以下步骤:

sudo apt-get install -y build-essential software-properties-common python-software-properties curl git-core libxml2-dev libxslt1-dev libfreetype6-dev python-pip python-apt python-dev libxmlsec1-dev swig
sudo pip install --upgrade pip
sudo pip install --upgrade virtualenv

2. 然后将configuratoin代码库重新复制到本地:

git clone -b master https://github.com/edx/configuration

-b后边可以尝试选择一个您觉得最新的分支(https://github.com/edx/configuration)

3. 然后运行命令:

cd /var/tmp/configuration

sudo pip install -r requirements.txt

4. 然后运行命令:

cd /var/tmp/configuration/playbooks && sudo ansible-playbook -c local ./edx_sandbox.yml -i "localhost,"

成功安装不易, 放个图在这里鼓励一下:

为Ubuntu安装桌面

1. 运行putty.exe,登录到Ubuntu虚拟机

2. 在命令终端中,输入以下命令:

sudo su -

sudo apt-get install ubuntu-desktop

sudo apt-get install xrdp

使用sudo为用户设置密码

1. 运行putty.exe, 登录到Ubuntu虚拟机

2. 在命令终端中,输入以下命令:

sudo su sudo passwd azureuser

3. 随后,输入该用户的密码。

Ubuntu中常用Terminal命令

pwd - 显示当前路径

clear - 清空控制台显示信息

cd .. - 返回上一层目录

ls - 显示当前路径下的所有文件/文件夹

mv - 移动文件

mkdir - 创建文件夹

rmdir - 移除空文件夹

rm -rf -移除文件夹以及其中的所有文件

在Azure中的Ubuntu中安装Open edX的更多相关文章

  1. python中在ubuntu中安装虚拟环境及环境配置

    python中在ubuntu中安装虚拟环境及环境配置 1.升级python包管理工具pip pip install --upgrade pip 备注:当你想升级一个包的时候 `pip install ...

  2. windows 10中的ubuntu子系统安装桌面环境的方法

    windows 10中的ubuntu子系统安装桌面环境的方法 (How to install Ubuntu-desktop in windows 10 Subsystem for Linux) 转载 ...

  3. python编程中在ubuntu中安装虚拟环境及环境配置

    1.升级python包管理工具pip pip install --upgrade pip 备注:当你想升级一个包的时候 `pip install --upgrade 包名` 2.python虚拟环境安 ...

  4. Win7中使用Eclipse连接虚拟机中的Ubuntu中的Hadoop2.4&lt;3&gt;

    经过前几天的学习,基本上能够小试牛刀编写一些小程序玩一玩了,在此之前做几项准备工作 明白我要用hadoop干什么 大体学习一下mapreduce ubuntu重新启动后,再启动hadoop会报连接异常 ...

  5. 如何在 Windows Azure 的虚拟机 ubuntu 上面安装和配置 openVPN(二)

    第二步:登录到虚拟机 一旦创建好虚拟机后,默认azure会打开TCP 22端口,即SSH的端口.所以,我们可以通过远程连接,访问和管理该虚拟机. 首先,下载一个PuTTY软件.该软件很简单,就一个可执 ...

  6. 在VirtualBox中的Ubuntu中添加新硬盘

    步骤如下: 1. 关闭Ubuntu系统,打开VistualBox,"设置"->"存储"->"添加虚拟硬盘" 2. 启动Ubunt ...

  7. 如何在 Windows Azure 的虚拟机 ubuntu 上面安装和配置 openVPN(三)

    第三步:安装openVPN 请打开 ubuntu 官方文档.然后,从上到下,按照步骤,输入执行命令.大家只需要执行到 First trouble shooting 之前即可. 不要怕麻烦,仔细读,一步 ...

  8. 如何在 Windows Azure 的虚拟机 ubuntu 上面安装和配置 openVPN(一)

    这篇文章,既是写给大伙儿的,也是写给自己的.本文要求读者需要有一定的英文基础和动手能力. 因为有MSDN subscriptions,所以每个月有100$可以使用windows azure,于是想尝试 ...

  9. ubuntu中安装visual studio code-(转载)

    在Ubuntu中安装Visual Studio Code 编译自:http://itsfoss.com/install-visual-studio-code-ubuntu/ 作者: Abhishek ...

随机推荐

  1. PHP 单引号和双引号的区别

    $a = 'jfdjaff';$b = '234125';$c = '"jj $a $b"'.PHP_EOL;echo $c;$c = 'jj $a $b'.PHP_EOL;ech ...

  2. BZOJ2494 Triangles and Quadrangle

    一道非常"简单"的计算几何题... 题意:给你两个三角形和一个四边形,问你能否用这两个三角形拼成这个四边形 首先...四边形可能是凹四边形...需要判断一下...这个比较简单直接分 ...

  3. 一个简单的excel文件上传到数据库方法

    因为以前项目中有用到过Excel导入,所以整理了一下,这是一个导入Excel数据到数据库的方法 注意:需要导入poi jar包 代码清单 /** * Excel 导入 * @param mapping ...

  4. UVALive 6680 Join the Conversation

    题意:conversion的定义是下一句提到上一句的人的名字.请你输出最长的对话的长度,及组成对话的序列号. 思路:动态规划的思想很容易想到,当前句子,根据所有提到的人的名字为结尾组成的对话长度来判断 ...

  5. sqlserver 2008 存储过程调用存储过程或方法

    函数:拆分字符串,并返回一个table CREATE FUNCTION [dbo].[f_splitSTR](@s varchar(max), --待分拆的字符串@split varchar(10) ...

  6. thinking in java之Collections工具类的使用

    代码摘自<thinking in java>4td 此实例非常好的总结了Collections的一些常见方法的使用. package countainers; import java.ut ...

  7. Grunt设置

    Grunt完成对LESS实时编译. 安装 安装grunt需要先安装node.js. 之后需要借助npm来安装grunt-cli,在cmd中npm install -g grunt-cli.(测试gru ...

  8. C char** 的一点儿理解

    理解是就是char** 相当于字符串数组,我以往纠结于该用 **arr还是*arr还是 (*arr),还是(**arr): 对于**arr而言:*arr代表数组的最开头,也就是第一个字串的内容.**a ...

  9. ZOJ 2477 Magic Cube 暴力,模拟 难度:0

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1477 用IDA*可能更好,但是既然时间宽裕数据简单,而且记录状态很麻烦,就直接 ...

  10. 火车安排问题(dp好题)

    火车站内往往设有一些主干线分叉出去的铁路支路,供火车停靠,以便上下客或装载货物.铁路 支路有一定长度:火车也有一定的长度,且每列火车的长度相等. 假设某东西向的铁路上,有一小站.该站只有一条铁路支路可 ...