From fd7f1ea8430e7d0394a402eb246d532abb905e26 Mon Sep 17 00:00:00 2001 From: Boxiang Zhu Date: Fri, 19 Aug 2022 17:22:24 +0800 Subject: [PATCH] docs: Add docker install of skyline-apiserver 1. Add docker install of skyline-apiserver. 2. Change the logo images folder 3. Change the swagger.json folder 4. Delete docs folder Change-Id: If0ae9a83dd9465af7057115d5b803bc641347a66 --- README-zh_CN.rst | 13 +- README.rst | 200 ++---------------- .../OpenStack_Project_Skyline-Icon-RGB.eps | Bin .../OpenStack_Project_Skyline-Icon-RGB.jpg | Bin .../OpenStack_Project_Skyline-Icon-RGB.png | Bin .../OpenStack_Project_Skyline-Icon-RGB.svg | 0 .../OpenStack_Project_Skyline_horizontal.eps | Bin .../OpenStack_Project_Skyline_horizontal.jpg | Bin .../OpenStack_Project_Skyline_horizontal.png | Bin .../OpenStack_Project_Skyline_horizontal.svg | 0 ...tack_Project_Skyline_horizontal_1color.eps | Bin ...tack_Project_Skyline_horizontal_1color.jpg | Bin ...tack_Project_Skyline_horizontal_1color.png | Bin ...tack_Project_Skyline_horizontal_1color.svg | 0 .../OpenStack_Project_Skyline_vertical.eps | Bin .../OpenStack_Project_Skyline_vertical.jpg | Bin .../OpenStack_Project_Skyline_vertical.png | Bin .../OpenStack_Project_Skyline_vertical.svg | 0 ...nStack_Project_Skyline_vertical_1color.eps | Bin ...nStack_Project_Skyline_vertical_1color.jpg | Bin ...nStack_Project_Skyline_vertical_1color.png | Bin ...nStack_Project_Skyline_vertical_1color.svg | 0 .../images/logo}/nine-color-deer-64.png | Bin .../source}/images/logo/skyline-logo.ai | 0 .../source}/images/logo/skyline-logo.pdf | Bin .../source}/images/logo/skyline-logo.png | Bin .../source}/images/logo/skyline-logo.svg | 0 doc/source/images/logo/skyline.png | Bin 0 -> 7178 bytes doc/source/index.rst | 20 +- doc/source/install/docker-install-ubuntu.rst | 182 ++++++++++++++++ doc/source/install/installing-guide.rst | 1 + doc/source/install/source-install-ubuntu.rst | 4 + doc/source/install/verify-install.rst | 4 + docs/api/swagger.json => swagger.json | 0 tox.ini | 2 +- 35 files changed, 230 insertions(+), 196 deletions(-) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline-Icon-RGB.eps (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline-Icon-RGB.jpg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline-Icon-RGB.png (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline-Icon-RGB.svg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal.eps (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal.jpg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal.png (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal.svg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal_1color.eps (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal_1color.jpg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal_1color.png (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_horizontal_1color.svg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical.eps (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical.jpg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical.png (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical.svg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical_1color.eps (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical_1color.jpg (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical_1color.png (100%) rename {docs/images => doc/source/images/logo}/OpenStack_Project_Skyline_vertical_1color.svg (100%) rename {docs/images => doc/source/images/logo}/nine-color-deer-64.png (100%) rename {docs => doc/source}/images/logo/skyline-logo.ai (100%) rename {docs => doc/source}/images/logo/skyline-logo.pdf (100%) rename {docs => doc/source}/images/logo/skyline-logo.png (100%) rename {docs => doc/source}/images/logo/skyline-logo.svg (100%) create mode 100644 doc/source/images/logo/skyline.png create mode 100644 doc/source/install/docker-install-ubuntu.rst rename docs/api/swagger.json => swagger.json (100%) diff --git a/README-zh_CN.rst b/README-zh_CN.rst index 7e643b4..3a3c7e2 100644 --- a/README-zh_CN.rst +++ b/README-zh_CN.rst @@ -1,8 +1,6 @@ -================== -Skyline API Server -================== - -`English <./README.rst>`__ \| 简体中文 +=========================== +OpenStack Skyline APIServer +=========================== Skyline 是一个经过 UI 和 UE 优化过的 OpenStack 仪表盘,支持 OpenStack Train 及以上版本。Skyline 拥有现代化的技术栈和生态,更易于开发者维护和 @@ -13,8 +11,6 @@ Skyline 的吉祥物是九色鹿。九色鹿源自于敦煌壁画《九色鹿本 Skyline 像九色鹿一样,轻巧、优雅,而又能力强大,为 OpenStack 社区和用户 提供更优质的 Dashboard。 -|image0| - **目录** - `Skyline API Server <#skyline-api-server>`__ @@ -280,5 +276,4 @@ Kolla Ansible 部署 |image1| -.. |image0| image:: docs/images/OpenStack_Project_Skyline_horizontal.png -.. |image1| image:: docs/images/nine-color-deer-64.png +.. |image1| image:: doc/source/images/logo/nine-color-deer-64.png diff --git a/README.rst b/README.rst index d370370..8991d43 100644 --- a/README.rst +++ b/README.rst @@ -1,198 +1,33 @@ -================== -Skyline API Server -================== +=========================== +OpenStack Skyline APIServer +=========================== .. image:: https://governance.openstack.org/tc/badges/skyline-apiserver.svg :target: https://governance.openstack.org/tc/reference/tags/index.html .. Change things from this point on +OpenStack Skyline APIServer is the back-end server of Skyline. -English \| `简体中文 <./README-zh_CN.rst>`__ +Skyline is an OpenStack dashboard optimized by UI and UE, support OpenStack +Train+. It has a modern technology stack and ecology, is easier for developers +to maintain and operate by users, and has higher concurrency performance. -Skyline is an OpenStack dashboard optimized by UI and UE, support -OpenStack Train+. It has a modern technology stack and ecology, is -easier for developers to maintain and operate by users, and has higher -concurrency performance. +You can learn more about Skyline APIServer at: -Skyline's mascot is the nine-color deer. The nine-color deer comes from -Dunhuang mural “the nine-color king deer”, whose moral is Buddhist -cause-effect and gratefulness, which is consistent with 99cloud's -philosophy of embracing and feedback community since its inception. We -also hope Skyline can keep light, elegant and powerful as the nine-color -deer, to provide a better dashboard for the openstack community and -users. +* `Wiki `__ +* `Developer Docs `__ +* `Blueprints `__ +* `Release notes `__ -|image0| +Getting Started +--------------- -**Table of contents** +If you'd like to run from the master branch, you can clone the git repo: -- `Skyline API Server <#skyline-api-server>`__ + git clone https://opendev.org/openstack/skyline-apiserver - - `Resources <#resources>`__ - - `Quick Start <#quick-start>`__ - - - `Prerequisites <#prerequisites>`__ - - `Configure <#configure>`__ - - `Deployment with Sqlite <#deployment-with-sqlite>`__ - - `Deployment with MariaDB <#deployment-with-mariadb>`__ - - `Test Access <#test-access>`__ - - - `Develop Skyline-apiserver <#develop-skyline-apiserver>`__ - - - `Dependent tools <#dependent-tools>`__ - - `Install & Run <#install--run>`__ - - - `Devstack Integration <#devstack-integration>`__ - - `Kolla Ansible Deployment <#kolla-ansible-deployment>`__ - -Resources ---------- - -- `Wiki `__ -- `Bug Tracker `__ - -Quick Start ------------ - -Prerequisites -~~~~~~~~~~~~~ - -- An OpenStack environment that runs at least core components and can - access OpenStack components through Keystone endpoints -- A Linux server with container engine - (`docker `__ or - `podman `__) - installed - -Configure -~~~~~~~~~ - -1. Edit the ``/etc/skyline/skyline.yaml`` file in linux server - - You can refer to the `sample file `__, and - modify the following parameters according to the actual environment - - - database_url - - keystone_url - - default_region - - interface_type - - system_project_domain - - system_project - - system_user_domain - - system_user_name - - system_user_password - -Deployment with Sqlite -~~~~~~~~~~~~~~~~~~~~~~ - -1. Run the skyline_bootstrap container to bootstrap - - .. code:: bash - - rm -rf /tmp/skyline && mkdir /tmp/skyline - - docker run -d --name skyline_bootstrap -e KOLLA_BOOTSTRAP="" -v /etc/skyline/skyline.yaml:/etc/skyline/skyline.yaml -v /tmp/skyline:/tmp --net=host 99cloud/skyline:latest - - # Check bootstrap is normal `exit 0` - docker logs skyline_bootstrap - -2. Run the skyline service after bootstrap is complete - - .. code:: bash - - docker rm -f skyline_bootstrap - - .. - - If you need to modify skyline port, add - ``-e LISTEN_ADDRESS=`` in the following command - - ``LISTEN_ADDRESS`` defaults to ``0.0.0.0:9999`` - - .. code:: bash - - docker run -d --name skyline --restart=always -v /etc/skyline/skyline.yaml:/etc/skyline/skyline.yaml -v /tmp/skyline:/tmp --net=host 99cloud/skyline:latest - -Deployment with MariaDB -~~~~~~~~~~~~~~~~~~~~~~~ - -1. Connect to database of the OpenStack environment and create the - ``skyline`` database - - .. code:: bash - - $ mysql -u root -p - MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS skyline DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; - Query OK, 1 row affected (0.001 sec) - -2. Grant proper access to the databases - - Replace ``SKYLINE_DBPASS`` with a suitable password. - - .. code:: bash - - MariaDB [(none)]> GRANT ALL PRIVILEGES ON skyline.* TO 'skyline'@'localhost' IDENTIFIED BY 'SKYLINE_DBPASS'; - Query OK, 0 rows affected (0.001 sec) - - MariaDB [(none)]> GRANT ALL PRIVILEGES ON skyline.* TO 'skyline'@'%' IDENTIFIED BY 'SKYLINE_DBPASS'; - Query OK, 0 rows affected (0.001 sec) - -3. Create skyline service credentials - - .. code:: bash - - # Source the admin credentials - $ source admin-openrc - - # Create the skyline user - $ openstack user create --domain default --password-prompt skyline - User Password: - Repeat User Password: - +---------------------+----------------------------------+ - | Field | Value | - +---------------------+----------------------------------+ - | domain_id | default | - | enabled | True | - | id | 1qaz2wsx3edc4rfv5tgb6yhn7ujm8ikl | - | name | skyline | - | options | {} | - | password_expires_at | 2020-08-08T08:08:08.123456 | - +---------------------+----------------------------------+ - - # Add the admin role to the skyline user: - $ openstack role add --project service --user skyline admin - -4. Run the skyline_bootstrap container to bootstrap - - .. code:: bash - - docker run -d --name skyline_bootstrap -e KOLLA_BOOTSTRAP="" -v /etc/skyline/skyline.yaml:/etc/skyline/skyline.yaml --net=host 99cloud/skyline:latest - - # Check bootstrap is normal `exit 0` - docker logs skyline_bootstrap - -5. Run the skyline service after bootstrap is complete - - .. code:: bash - - docker rm -f skyline_bootstrap - - .. - - If you need to modify skyline port, add - ``-e LISTEN_ADDRESS=`` in the following command - - ``LISTEN_ADDRESS`` defaults to ``0.0.0.0:9999`` - - .. code:: bash - - docker run -d --name skyline --restart=always -v /etc/skyline/skyline.yaml:/etc/skyline/skyline.yaml --net=host 99cloud/skyline:latest - -Test Access -~~~~~~~~~~~ - -You can now access the dashboard: ``https://:9999`` +You can raise bugs on `Launchpad `__ Develop Skyline-apiserver ------------------------- @@ -295,5 +130,4 @@ Kolla Ansible Deployment |image1| -.. |image0| image:: docs/images/OpenStack_Project_Skyline_horizontal.png .. |image1| image:: docs/images/nine-color-deer-64.png diff --git a/docs/images/OpenStack_Project_Skyline-Icon-RGB.eps b/doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.eps similarity index 100% rename from docs/images/OpenStack_Project_Skyline-Icon-RGB.eps rename to doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.eps diff --git a/docs/images/OpenStack_Project_Skyline-Icon-RGB.jpg b/doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.jpg similarity index 100% rename from docs/images/OpenStack_Project_Skyline-Icon-RGB.jpg rename to doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.jpg diff --git a/docs/images/OpenStack_Project_Skyline-Icon-RGB.png b/doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.png similarity index 100% rename from docs/images/OpenStack_Project_Skyline-Icon-RGB.png rename to doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.png diff --git a/docs/images/OpenStack_Project_Skyline-Icon-RGB.svg b/doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.svg similarity index 100% rename from docs/images/OpenStack_Project_Skyline-Icon-RGB.svg rename to doc/source/images/logo/OpenStack_Project_Skyline-Icon-RGB.svg diff --git a/docs/images/OpenStack_Project_Skyline_horizontal.eps b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal.eps similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal.eps rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal.eps diff --git a/docs/images/OpenStack_Project_Skyline_horizontal.jpg b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal.jpg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal.jpg rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal.jpg diff --git a/docs/images/OpenStack_Project_Skyline_horizontal.png b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal.png similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal.png rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal.png diff --git a/docs/images/OpenStack_Project_Skyline_horizontal.svg b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal.svg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal.svg rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal.svg diff --git a/docs/images/OpenStack_Project_Skyline_horizontal_1color.eps b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.eps similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal_1color.eps rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.eps diff --git a/docs/images/OpenStack_Project_Skyline_horizontal_1color.jpg b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.jpg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal_1color.jpg rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.jpg diff --git a/docs/images/OpenStack_Project_Skyline_horizontal_1color.png b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.png similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal_1color.png rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.png diff --git a/docs/images/OpenStack_Project_Skyline_horizontal_1color.svg b/doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.svg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_horizontal_1color.svg rename to doc/source/images/logo/OpenStack_Project_Skyline_horizontal_1color.svg diff --git a/docs/images/OpenStack_Project_Skyline_vertical.eps b/doc/source/images/logo/OpenStack_Project_Skyline_vertical.eps similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical.eps rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical.eps diff --git a/docs/images/OpenStack_Project_Skyline_vertical.jpg b/doc/source/images/logo/OpenStack_Project_Skyline_vertical.jpg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical.jpg rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical.jpg diff --git a/docs/images/OpenStack_Project_Skyline_vertical.png b/doc/source/images/logo/OpenStack_Project_Skyline_vertical.png similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical.png rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical.png diff --git a/docs/images/OpenStack_Project_Skyline_vertical.svg b/doc/source/images/logo/OpenStack_Project_Skyline_vertical.svg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical.svg rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical.svg diff --git a/docs/images/OpenStack_Project_Skyline_vertical_1color.eps b/doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.eps similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical_1color.eps rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.eps diff --git a/docs/images/OpenStack_Project_Skyline_vertical_1color.jpg b/doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.jpg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical_1color.jpg rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.jpg diff --git a/docs/images/OpenStack_Project_Skyline_vertical_1color.png b/doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.png similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical_1color.png rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.png diff --git a/docs/images/OpenStack_Project_Skyline_vertical_1color.svg b/doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.svg similarity index 100% rename from docs/images/OpenStack_Project_Skyline_vertical_1color.svg rename to doc/source/images/logo/OpenStack_Project_Skyline_vertical_1color.svg diff --git a/docs/images/nine-color-deer-64.png b/doc/source/images/logo/nine-color-deer-64.png similarity index 100% rename from docs/images/nine-color-deer-64.png rename to doc/source/images/logo/nine-color-deer-64.png diff --git a/docs/images/logo/skyline-logo.ai b/doc/source/images/logo/skyline-logo.ai similarity index 100% rename from docs/images/logo/skyline-logo.ai rename to doc/source/images/logo/skyline-logo.ai diff --git a/docs/images/logo/skyline-logo.pdf b/doc/source/images/logo/skyline-logo.pdf similarity index 100% rename from docs/images/logo/skyline-logo.pdf rename to doc/source/images/logo/skyline-logo.pdf diff --git a/docs/images/logo/skyline-logo.png b/doc/source/images/logo/skyline-logo.png similarity index 100% rename from docs/images/logo/skyline-logo.png rename to doc/source/images/logo/skyline-logo.png diff --git a/docs/images/logo/skyline-logo.svg b/doc/source/images/logo/skyline-logo.svg similarity index 100% rename from docs/images/logo/skyline-logo.svg rename to doc/source/images/logo/skyline-logo.svg diff --git a/doc/source/images/logo/skyline.png b/doc/source/images/logo/skyline.png new file mode 100644 index 0000000000000000000000000000000000000000..15814168d18b543c27de6f1e3064c0209e14194e GIT binary patch literal 7178 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 is one -part of OpenStack Modern Dashboard, which provides RESTful APIs to -`Skyline Console `_. +.. image:: images/logo/skyline.png + +OpenStack `Skyline APIServer `_ +is the back-end server of Skyline. It provides RESTful APIs to `Skyline Console +`_. + +Skyline is an OpenStack dashboard optimized by UI and UE, support OpenStack +Train+. It has a modern technology stack and ecology, is easier for developers +to maintain and operate by users, and has higher concurrency performance. + +Skyline's mascot is the nine-color deer. The nine-color deer comes from +Dunhuang mural “the nine-color king deer”, whose moral is Buddhist +cause-effect and gratefulness, which is consistent with 99cloud's +philosophy of embracing and feedback community since its inception. We +also hope Skyline can keep light, elegant and powerful as the nine-color +deer, to provide a better dashboard for the openstack community and +users. Using Skyline APIServer ======================= diff --git a/doc/source/install/docker-install-ubuntu.rst b/doc/source/install/docker-install-ubuntu.rst new file mode 100644 index 0000000..1a0ae11 --- /dev/null +++ b/doc/source/install/docker-install-ubuntu.rst @@ -0,0 +1,182 @@ +.. _docker-install-ubuntu: + +Docker Install Ubuntu +~~~~~~~~~~~~~~~~~~~~~ + +This section describes how to install and configure the Skyline APIServer +service. Before you begin, you must have a ready OpenStack environment. At +least it includes ``keystone, glance, nova and neutron service``. + +.. note:: + + You have install the docker service on the host machine. You can follow + the `docker installation `_. + +Prerequisites +------------- + +Before you install and configure the Skyline APIServer service, you +must create a database. + +#. To create the database, complete these steps: + + #. Use the database access client to connect to the database + server as the ``root`` user: + + .. code-block:: console + + # mysql + + #. Create the ``skyline`` database: + + .. code-block:: console + + MariaDB [(none)]> CREATE DATABASE skyline DEFAULT CHARACTER SET \ + utf8 DEFAULT COLLATE utf8_general_ci; + + #. Grant proper access to the ``skyline`` database: + + .. code-block:: console + + MariaDB [(none)]> GRANT ALL PRIVILEGES ON skyline.* TO 'skyline'@'localhost' \ + IDENTIFIED BY 'SKYLINE_DBPASS'; + MariaDB [(none)]> GRANT ALL PRIVILEGES ON skyline.* TO 'skyline'@'%' \ + IDENTIFIED BY 'SKYLINE_DBPASS'; + + Replace ``SKYLINE_DBPASS`` with a suitable password. + + #. Exit the database access client. + +#. Source the ``admin`` credentials to gain access to admin-only + CLI commands: + + .. code-block:: console + + $ . admin-openrc + +#. To create the service credentials, complete these steps: + + #. Create a ``skyline`` user: + + .. code-block:: console + + $ openstack user create --domain default --password-prompt skyline + + User Password: + Repeat User Password: + +---------------------+----------------------------------+ + | Field | Value | + +---------------------+----------------------------------+ + | domain_id | default | + | enabled | True | + | id | 1qaz2wsx3edc4rfv5tgb6yhn7ujm8ikl | + | name | skyline | + | options | {} | + | password_expires_at | None | + +---------------------+----------------------------------+ + + #. Add the ``admin`` role to the ``skyline`` user: + + .. code-block:: console + + $ openstack role add --project service --user skyline admin + + .. note:: + + This command provides no output. + +Install and configure components +-------------------------------- + +We will install the Skyline APIServer service from docker image. + +#. Pull the Skyline APIServer service image from Docker Hub: + + .. code-block:: console + + $ sudo docker pull 99cloud/skyline:latest + +#. Ensure that some folders of skyline-apiserver have been created + + .. code-block:: console + + $ sudo mkdir -p /etc/skyline /var/log/skyline /var/lib/skyline /var/log/nginx + +#. Set all value from :ref:`configuration-settings` into the configuration file + ``/etc/skyline/skyline.yaml`` + + .. note:: + + Change the related configuration in ``/etc/skyline/skyline.yaml``. Detailed introduction + of the configuration can be found in :ref:`configuration-settings`. + + .. code-block:: yaml + + default: + database_url: mysql://skyline:SKYLINE_DBPASS@DB_SERVER:3306/skyline + debug: true + log_dir: /var/log + openstack: + keystone_url: http://KEYSTONE_SERVER:5000/v3/ + system_user_password: SKYLINE_SERVICE_PASSWORD + + Replace ``SKYLINE_DBPASS``, ``DB_SERVER``, ``KEYSTONE_SERVER`` and + ``SKYLINE_SERVICE_PASSWORD`` with a correct value. + +Finalize installation +--------------------- + +#. Run bootstrap server + + .. code-block:: console + + $ sudo docker run -d --name skyline_bootstrap \ + -e KOLLA_BOOTSTRAP="" \ + -v /etc/skyline/skyline.yaml:/etc/skyline/skyline.yaml \ + -v /var/log:/var/log \ + --net=host 99cloud/skyline:latest + + .. code-block:: text + + If you see the following message, it means that the bootstrap server is successful: + + + echo '/usr/local/bin/gunicorn -c /etc/skyline/gunicorn.py skyline_apiserver.main:app' + + mapfile -t CMD + ++ xargs -n 1 + ++ tail /run_command + + [[ -n 0 ]] + + cd /skyline-apiserver/ + + make db_sync + alembic -c skyline_apiserver/db/alembic/alembic.ini upgrade head + 2022-08-19 07:49:16.004 | INFO | alembic.runtime.migration:__init__:204 - Context impl MySQLImpl. + 2022-08-19 07:49:16.005 | INFO | alembic.runtime.migration:__init__:207 - Will assume non-transactional DDL. + + exit 0 + +#. Cleanup bootstrap server + + .. code-block:: console + + $ sudo docker rm -f skyline_bootstrap + +#. Run skyline-apiserver + + .. code-block:: console + + $ sudo docker run -d --name skyline --restart=always \ + -v /etc/skyline/skyline.yaml:/etc/skyline/skyline.yaml \ + -v /var/log:/var/log \ + --net=host 99cloud/skyline:latest + + .. note:: + + The skyline image is both include skyline-apiserver and skyline-console. + And the skyline-apiserver is bound as socket file + ``/var/lib/skyline/skyline.sock``. + + So you can not access the skyline-apiserver openapi swagger. But now you + can visit the skyline UI ``https://xxxxx:9999``. + + .. note:: + + If you need to modify skyline port, add ``-e LISTEN_ADDRESS=`` in run command. + Default port is 9999. diff --git a/doc/source/install/installing-guide.rst b/doc/source/install/installing-guide.rst index 7e43d18..13f2594 100644 --- a/doc/source/install/installing-guide.rst +++ b/doc/source/install/installing-guide.rst @@ -9,4 +9,5 @@ Skyline APIServer on Ubuntu 20.04 LTS. :maxdepth: 2 source-install-ubuntu + docker-install-ubuntu verify-install diff --git a/doc/source/install/source-install-ubuntu.rst b/doc/source/install/source-install-ubuntu.rst index b19f0f8..daf0fbb 100644 --- a/doc/source/install/source-install-ubuntu.rst +++ b/doc/source/install/source-install-ubuntu.rst @@ -95,6 +95,7 @@ We will install the Skyline APIServer service from source code. $ git clone https://opendev.org/openstack/skyline-apiserver.git .. note:: + If you meet the following error, you need to run command ``sudo apt install -y ca-certificates``: `fatal: unable to access 'https://opendev.org/openstack/skyline-apiserver.git/': server @@ -122,10 +123,12 @@ We will install the Skyline APIServer service from source code. $ sudo cp ${HOME}/skyline-apiserver/etc/skyline.yaml.sample /etc/skyline/skyline.yaml .. note:: + We need to change the ``bind`` value in ``/etc/skyline/gunicorn.py`` to ``0.0.0.0:28000``. Default value is ``unix:/var/lib/skyline/skyline.sock``. .. note:: + Change the related configuration in ``/etc/skyline/skyline.yaml``. Detailed introduction of the configuration can be found in :ref:`configuration-settings`. @@ -141,6 +144,7 @@ We will install the Skyline APIServer service from source code. Replace ``SKYLINE_DBPASS``, ``DB_SERVER``, ``KEYSTONE_SERVER`` and ``SKYLINE_SERVICE_PASSWORD`` with a correct value. + #. Populate the Skyline APIServer database .. code-block:: console diff --git a/doc/source/install/verify-install.rst b/doc/source/install/verify-install.rst index 4514c35..98d574f 100644 --- a/doc/source/install/verify-install.rst +++ b/doc/source/install/verify-install.rst @@ -5,6 +5,10 @@ Verify Skyline APIServer operation Verify operation of the Skyline APIServer service +.. note:: + + Only available when you use :ref:`source-install-ubuntu`. + .. note:: Visit the OpenAPI swagger of Skyline APIServer. diff --git a/docs/api/swagger.json b/swagger.json similarity index 100% rename from docs/api/swagger.json rename to swagger.json diff --git a/tox.ini b/tox.ini index 3aa9ca3..a0cdd4f 100644 --- a/tox.ini +++ b/tox.ini @@ -106,7 +106,7 @@ commands = description = Generate swagger files. commands = - skyline-swagger-generator -o docs/api/swagger.json + skyline-swagger-generator -o swagger.json [testenv:genconfig] description =