ubuntulinux.rst 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. :title: Requirements and Installation on Ubuntu Linux
  2. :description: Please note this project is currently under heavy development. It should not be used in production.
  3. :keywords: Docker, Docker documentation, requirements, virtualbox, vagrant, git, ssh, putty, cygwin, linux
  4. .. _ubuntu_linux:
  5. Ubuntu Linux
  6. ============
  7. **Please note this project is currently under heavy development. It should not be used in production.**
  8. Right now, the officially supported distribution are:
  9. - :ref:`ubuntu_precise`
  10. - :ref:`ubuntu_raring`
  11. Docker has the following dependencies
  12. * Linux kernel 3.8 (read more about :ref:`kernel`)
  13. * AUFS file system support (we are working on BTRFS support as an alternative)
  14. .. _ubuntu_precise:
  15. Ubuntu Precise 12.04 (LTS) (64-bit)
  16. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  17. This installation path should work at all times.
  18. Dependencies
  19. ------------
  20. **Linux kernel 3.8**
  21. Due to a bug in LXC docker works best on the 3.8 kernel. Precise comes with a 3.2 kernel, so we need to upgrade it. The kernel we install comes with AUFS built in.
  22. .. code-block:: bash
  23. # install the backported kernel
  24. sudo apt-get update && sudo apt-get install linux-image-generic-lts-raring
  25. # reboot
  26. sudo reboot
  27. Installation
  28. ------------
  29. Docker is available as a Ubuntu PPA (Personal Package Archive),
  30. `hosted on launchpad <https://launchpad.net/~dotcloud/+archive/lxc-docker>`_
  31. which makes installing Docker on Ubuntu very easy.
  32. .. code-block:: bash
  33. # Add the PPA sources to your apt sources list.
  34. sudo apt-get install python-software-properties && sudo add-apt-repository ppa:dotcloud/lxc-docker
  35. # Update your sources
  36. sudo apt-get update
  37. # Install, you will see another warning that the package cannot be authenticated. Confirm install.
  38. sudo apt-get install lxc-docker
  39. Verify it worked
  40. .. code-block:: bash
  41. # download the base 'ubuntu' container and run bash inside it while setting up an interactive shell
  42. docker run -i -t ubuntu /bin/bash
  43. # type 'exit' to exit
  44. **Done!**, now continue with the :ref:`hello_world` example.
  45. .. _ubuntu_raring:
  46. Ubuntu Raring 13.04 (64 bit)
  47. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  48. Dependencies
  49. ------------
  50. **AUFS filesystem support**
  51. Ubuntu Raring already comes with the 3.8 kernel, so we don't need to install it. However, not all systems
  52. have AUFS filesystem support enabled, so we need to install it.
  53. .. code-block:: bash
  54. sudo apt-get update
  55. sudo apt-get install linux-image-extra-`uname -r`
  56. **add-apt-repository support**
  57. Some installations of Ubuntu 13.04 require ``software-properties-common`` to be
  58. installed before being able to use add-apt-repository.
  59. .. code-block:: bash
  60. sudo apt-get install software-properties-common
  61. Installation
  62. ------------
  63. Docker is available as a Ubuntu PPA (Personal Package Archive),
  64. `hosted on launchpad <https://launchpad.net/~dotcloud/+archive/lxc-docker>`_
  65. which makes installing Docker on Ubuntu very easy.
  66. Add the custom package sources to your apt sources list.
  67. .. code-block:: bash
  68. # add the sources to your apt
  69. sudo add-apt-repository ppa:dotcloud/lxc-docker
  70. # update
  71. sudo apt-get update
  72. # install
  73. sudo apt-get install lxc-docker
  74. Verify it worked
  75. .. code-block:: bash
  76. # download the base 'ubuntu' container and run bash inside it while setting up an interactive shell
  77. docker run -i -t ubuntu /bin/bash
  78. # type exit to exit
  79. **Done!**, now continue with the :ref:`hello_world` example.