最近,由于工作原因,在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. Html5工具

    HTML5被看做是web开发者创建流行web应用的利器,增加了对视频和Canvas 2D的支持.用HTML5的优点主要在于,这个技术可以进行跨平台的使用.比如你开发了一款HTML5的游戏,你可以很轻易 ...

  2. linux 查看僵尸进程

    top -b -i -n 1 查看僵死进程命令 ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]' 查看apache 当前进程数 ps -ef | grep ht ...

  3. outlook 用宏发邮件

    经常发面试邮件,通常只是修改一下收件人邮箱地址,和收件人姓名,其他全部一致,有木有发现每次都用用outlook写邮件很麻烦? 使用宏发邮件,就会不麻烦了,直接修改下称呼,修改下收件人地址,按下F5,就 ...

  4. C++ STL pair

    没有找到priority_queue里存放pair不用typedef的方法...大概第一次觉得这个有用吧... 优先队列里和sort函数对pair 的默认排序是first从小到大,second从小到大 ...

  5. 碰到sshd连接不上linux时的解决办法

    1,首先更改ssh配置,可以是ssh端口连接不上服务器 cd /etc/ssh/sshd_config vi !$ Port 52113 //ssh默认的连接端口, 改为别人不知道的端口 Permit ...

  6. AjaxUpload.3.5.js之ASP.NET 文件上传

    一.引入js文件 <script type="text/javascript" src="/Scripts/JQuery.min.js"></ ...

  7. API 进程、线程函数

    CancelWaitableTimer 这个函数用于取消一个可以等待下去的计时器操作 CallNamedPipe 这个函数由一个希望通过管道通信的一个客户进程调用 ConnectNamedPipe 指 ...

  8. HDU 3265 扫描线(矩形面积并变形)

    Posters Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  9. IT公司100题-1-二叉树转换为双链表

    问题描述: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表.要求不能创建任何新的结点,只调整指针的指向. 10   /   \  6      14/  \    /   \4   8 1 ...

  10. WP8.1 Study4:WP8.1中控件集合应用

    1.AutoSuggestBox的应用 在xaml里代码可如下: <AutoSuggestBox Name="autobox" Header="suggestion ...