Запуск NGINX Django python3 на сервере Centos 7
Название сайта: example.com
Корень сайта: /home/example/Projects/example.com
Статика сайта (css, js и т.п): /home/example/Projects/example.com/static
Медиа файлы сайта: /home/example/Projects/example.com/media
Django проект для сайта: /home/example/Projects/example.
com/back
Пользовательский каталог: /home/example/
Виртуальное окружение (python3) для Django проекта: /home/exam/virtualenv/example.com/
Конфигурация NGINX для сайта: /etc/nginx/conf.d/example.com.conf
Конфигурация uWSGI сервиса в режиме императора: /etc/systemd/system/uwsgi.
service, смотрит конфигурации вассалов в каталоге /etc/uwsgi/vassals/enabled/
Вассал uWSGI для запуска Django проекта: /etc/uwsgi/vassals/enabled/example.ini
Сокет uWSGI, создается при удачном запуске вассала: /run/uwsgi/example.
sock
Перезапуск вассала uWSGI, когда нужно внести изменения на сайте после внесения изменений в Django проекте: нужно переместить /etc/uwsgi/vassals/enabled/example.ini /etc/uwsgi/vassals/disabled/ для отключения. Для запуска, переместить обратно в /etc/uwsgi/vassals/enabled/. Сервисы NGINX и uWSGI запускаются под пользователем nginx.
!Если будут проблемы при запуске сервисов с правами доступа к пользовательскому каталогу, то можно временно отключить SELINUX:# setenforce 0- все виртуальные окружения у меня храняться в ~/virtualenv – в пользовательском каталоге установлен из исходников ~/python3, его я буду использовать в виртуально окружении – я взял за правило создавать виртуальное окружение для каждого нового Django проекта (для разных проектов используются разные версии Python, Django и другие python библиотеки) – создаю виртуальное окружение example.com в директории /home/exam/virtualenv , использую python 3 версии
$ cd ~/virtualenv/
$ virtualenv -p ~/python3/bin/python3 example.com – запускаю созданное виртуальное окружение
$ source ~/virtualenv/example.com/bin/activate
– проверяю версию python для созданного виртуального окружения
$ python -V
Python 3.5.1 все как и задумывалось
– Устанавливаю django в виртуальном окружении example.com
$ pip install django Все веб проекты у меня лежат в ~/Projects
$ source ~/virtualenv/example.com/bin/activate
$ cd ~/Projects/ – создаю каталог в котором у меня будет размещаться сайт
$ mkdir example.com
– перехожу в каталог проекта и создаю каталоги для медиа и статики
$ cd example.com/
$ mkdir media
$ mkdir static – создаю django проект (Django проекты я создаю с названием back, от слова backend, а frontend размещаю в каталоге front)
$ django-admin startproject back
– редактирую пути для статики и медиа в созданном Django проекте
$ vi ~/Projects/example.com/back/back/settings.py
STATIC_URL = '/static/'
STATIC_ROOT = '/home/example/Projects/example.com/static'
MEDIA_URL = '/media/'
MEDIA_ROOT = '/home/example/Projects/example.com/media' – проверяю работу созданного Django проекта, предварительно делаю миграцию, собираю статику и создаю суперпользователя
$ cd ~/Projects/example.com/back/
$ python manage.py migrate
$ python manage.py collectstatic
$ python manage.py createsuperuser
$ python manage.py runserver Смотрю в браузере http://127.0.0.1:8000 и http://127.0.0.1:8000/admin/ Все работает, мой Django проект запустился – деактивирую виртуальное окружение
$ deactivate
– Устанавливаю в системе uwsgi – Создаю файл /home/example/Projects/example.com/back/back.wsgi – Запускаю тест uwsgi на порту 8080 с –pythonpath /home/example/virtualenv/example.com/lib/python3.5/site-packages и с указанием проекта –chdir /home/example/Projects/example.com/back. Ключи, с которыми сейчас запистится uwsgi я буду использовать в настройках. В браузере, по адресу http://127.0.0.1:8080/, снова вижу страницу созданного Django проекта http://127.0.0.1:8080/admin отображается без статики, но пока об этом не стоит беспокоится, настроится позже. !!! Внимание. В некоторых инструкциях написано использование ключа –home, –virtualenv, -H или –venv, который, якобы, используется для пути к python в виртуальном окружении, так работает только если и в системе и виртуально окружении стоит python2! В моем случае используется python3, который установлен в виртуальном окружении, поэтому нужно использовать ключ –pythonpath путь_до_виртуального_окружения/lib/python3.5/site-packages Когда имеется несколько сайтов с uwsgi, то лучше запускать uwsgi в режиме императора. Хотя, у меня пока только один сайт, но лучше сразу сделаю настройки для нескольких сайтов, чтобы не возращаться к этой теме. – Настройки для запуска wsgi сайтов будут храниться в /etc/uwsgi/vassals, создаю эту папку
$ sudo mkdir -p /etc/uwsgi/vassals
– Запущенные вассалы будут распологаться в директории enabled, а отключенные я буду размещать в disabled. Создаю для них папки
$ sudo mkdir /etc/uwsgi/vassals/enabled
$ sudo mkdir /etc/uwsgi/vassals/disabled – Создаю uwsgi ini файл с настройками для моего Django проекта $ sudo vi /etc/uwsgi/vassals/disabled/example.ini
[uwsgi]
chdir = /home/example/Projects/example.com/back
pythonpath = /home/example/virtualenv/example.com/lib/python3.5/site-packages
socket = /run/uwsgi/example.sock
module = back.wsgi
chown-socket = nginx:nginx
chmod-socket = 660
master = true
processes = 2
threads = 2
vacuum = true – Для проверки созданных настроек, запускаю uwsgi c настройками /etc/uwsgi/vassals/disabled/example.ini
$ uwsgi –ini /etc/uwsgi/vassals/disabled/example.ini
Чтобы пользователь nginx мог читать настройки из каталога проектов /home/example/Projects, – добавляю пользователя nginx в группу example
$ usermod -a -G example nginx
-и изменяю права доступа на домашнюю директорию пользователя (именно на домашнюю, а не только на каталог корня сайта)
$ chmod 710 /home/example
– Создаю сервис для запуска uwsgi, для императора указываю смотреть каталог /etc/uwsgi/vassals/enabled (uwsgi будет запускаться под пользователем nginx, запущенные сервисы будут размещаться в /run/uwsgi
$ vi /etc/systemd/system/uwsgi.service
[Unit]
Description=uWSGI Emperor service
[Service]
ExecStartPre=/usr/bin/bash -c 'mkdir -p /run/uwsgi; chown nginx:nginx /run/uwsgi'
ExecStart=/usr/bin/uwsgi –emperor /etc/uwsgi/vassals/enabled –uid nginx –gid nginx
Restart=always
KillSignal=SIGQUIT
Type=notify
NotifyAccess=all
[Install]
WantedBy=multi-user.target – Запускаю сервис uwsgi
$ sudo systemctl start uwsgi
– Перемещаю вассал example.ini в enabled для запуска (вассалы, согласно настройкам /etc/systemd/system/uwsgi.service просматриваются в каталоге enabled)
$ mv /etc/uwsgi/vassals/disabled/example.ini /etc/uwsgi/vassals/enabled/
Теперь вассал должен быть обнаружен в этом каталоге и обработан. Если в дальнейшем я захочу приостановить работу сайта, то просто перемещаю файл example.ini из enabled в disabled. – Смотрю логи, запустился ли вассал для example.com
$ sudo cat /var/log/messages
Сервис uwsgi работает в режиме иператора и вассал example.ini ожидает запросов – [emperor] vassal example.ini is ready to accept requests. – Теперь можно добавить запуск uwsgi в запуск при загрузке системы.
$ sudo systemctl enable uwsgi
У меня уже установлен NGINX. Если нужны подробности установки, то можно посмотреть http://hairetdin.blogspot.ru/2016/10/nginx-kerberos-centos-7.html Конфигурационные файлы для сайтов, согласно настройкам /etc/nginx/nginx.conf (include /etc/nginx/conf.d/*.conf;), я размещаю в /etc/nginx/conf.d/ – Создаю конфигурацию nginx для сайта example.com
$ sudo vi /etc/nginx/conf.d/example.com.conf
server {
listen 80;
server_name example.com www.example.com;
location = favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/example/Projects/example.com;
}
location /media/ {
root /home/example/Projects/example.com;
}
location / {
include uwsgi_params;
uwsgi_pass unix:/run/uwsgi/example.sock;
}
}
В этом файле я указал где смотреть статику и медиа файлы для моего проекта, а также, где смотреть параметры uwsgi.
– Тестирую созданную конфигурацию:
$ nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful Конфигурация в порядке. – Перезапускаю сервис nginx
$ sudo systemctl restart nginx
– По умолчанию в Django проекте используется sqlite база данных. Ранее пользователя nginx (под которым запускается сервисы NGINX и uWSGI) я уже добавил в группу example, теперь добавлю права на запись группе для файла базы данных – db.sqlite3: $ chmod 664 /home/example/Projects/example.com/back/db.sqlite3 – Добавляю в /etc/hosts домен example.com, чтобы можно было проверить работу локально
$ sudo /etc/hosts
192.168.1.3 example.com
– Смотрю сайт example.com через браузер
Все работает
Источник: http://hairetdin.blogspot.com/2016/10/nginx-django-python3-centos-7.html
How To Install Python 3 on CentOS 7
How To Install Python 3 on CentOS 7.
привет в этом видео, я собираюсь показать вам, как установить дерево Python на CentOS 7 и как настроить локальное программирование на вашем сервере CentOS 7 ok поэтому первое, что я собираюсь сделать здесь, это Я собираюсь открыть терминал на CentOS 7 ok У меня есть мой терминал здесь, поэтому
первое , что я собираюсь сделать, это чтобы убедиться, что мои системы обновлены поэтому для этого я просто наберу Обновление sudo yum и нажмите enter, если вам будет предложено поп ваш пароль ОК и я полностью обновлен, если вы
запросить запуск обновлений, обязательно запустите их ИТАК следующая вещь , которую я собираюсь запустите, я собираюсь установить ваш обычный создайте своих мутантов, чтобы мы это сделали сейчас набрав sudo yum install yum – utils,, а затем я нажму «return ok» и я уже на самом деле он установлен и
он говорит, что до последней версии так мы в порядке, так что следующее, что я собираюсь установить dan – это разработка инструменты для CentOS, поэтому я собираюсь ввести sudo yum group снова установит разработку Я оставлю все эти команды в
чтобы вы могли просто скопировать и вставьте их в порядке, чтобы мы могли видеть, что это здесь есть несколько подростков, поэтому, когда нажмите Y, чтобы установить, что я сделаю я остановлю видео здесь, пока это установлено хорошо, похоже, что он установлен
для нас нормально, так что теперь давайте перейдем к gettin плотно и установить на нашей машине ИТАК мы собираемся получить линию вверх по течению стабильной версии, поэтому нам нужно запустить команду, которую я буду копировать и вставлять здесь и я также вставьте его ниже, чтобы
вы можете скопировать его так sudo yum – почему так – почему вместо того, что нажимает на нас задницу установить стих, и мы собираемся угадать здесь, здесь, и мы нажмем return ок так снова, пока это делает это я приостановит видео нормально не большой
затормозил то, что я бы опубликовал, так что теперь давайте установим версию элемента, которая мы хотим , так что я собираюсь ввести в Sudo ням устанавливать Титан-3 6u, и я нажму Enter, если вы
просто нажмите Y, чтобы принять установка и если вам будет предложено получите ключ, чтобы нажать Y, чтобы принять это , а также это будет продолжаться установите здесь для нас нормально, что выглядит как он установлен, давайте просто удвоим проверьте, что установлено, и мы будем вводить
Python 3.6 пробел в капитале v отлично, и вы можете видеть, что у нас есть python 3 точка 6 точка 2 установлена, что отлично хорошо, поэтому теперь мы хотим установить pip как хорошо, поэтому пипс позволяет вам сбрасывать некоторые пакеты Python, поэтому я просто
собираюсь скопировать и вставить это здесь снова сначала так скоро Oh YUM – зачем устанавливать сражаюсь через тебя – пип Я пойду вернитесь сюда, чтобы это исчезло и установить этот лес в настоящее время хорошо совершенным это сделано, и последняя команда нам нужна заключается в том, чтобы
новый тип ячейки в sudo yum install Python 3 6 new – devil, и он должен идти для нас сейчас и принесите пакет и загрузка устанавливается нормально, и если вы нажмите Y, чтобы принять установка, и это уйдет Я буду
установить там лесного свидетеля теперь, когда мы установили Python мы создадим виртуальную среду лес работа по основном точки это то, что он держит ваши проекты и системные файлы полностью разделены на хорошая практика, чтобы сделать хорошо, так что первый
хочу сделать, я просто увижу, где я вот так я в своей домашней папке, которая совершенный поэтому первое , что я собираюсь сделать , это я собираюсь сделать каталог и я хочу называть это средой хорошо отлично, и я просто собираюсь записать CD
каталог в порядке, так что теперь, когда мы в там мы собираемся создать наш среда так , чтобы сделать так , что мы собираемся тип в титане 3.6 пробел минус M пространство ve n V, и мы назовем это своим подчеркиванием e и B, и мы получим ответ, так что выглядит так, что мы можем просто
проверьте это, запустив LS, и мы будем CD в мой env, и это нарисовано LS совершенным и это выглядит как работа, и вы можете У нас есть несколько созданных вами папок вот для нас, так что теперь нам нужно сделать теперь нам нужно активировать эту среду
поэтому для этого я собираюсь ввести источник Я просто выйду с этим каталогом на самом деле, я собираюсь ввести источник мой env bin и активировать, и вы можете использовать вкладка завершена здесь, чтобы табо,, а затем Я ударю возвращение в порядке , и вы можете увидеть его похоже, что мы сейчас в нашей среде
так как вы можете видеть мои a и B здесь, на начало моего пути теперь, когда мы создаем нашу среду давайте создадим нашу первую программу Python, чтобы Я собираюсь ввести, давайте называть его привет мир делает все хорошо, и нажмите, чтобы я пошел
в серии моделей, и я собираюсь напечатайте, и я собираюсь ввести Привет, мир воткнуть x-bike немного воска здесь, и я закрою это от спасения Аллаха : WQ x нравится отметьте хорошо, чтобы мы могли видеть наш мир привет проблемы там, поэтому давайте теперь запускаем это так
когда вы находитесь в своей программной среде вы можете просто запустить его, набрав Python вам не нужно вводить python 3.6 я закрою вкладку вкладки здесь, чтобы вкладка из моей программы Python, и я удару вернитесь, и вы увидите, что вы
Программа Python печатается правильно и если у вас есть какие – либо вопросы , обязательно комментарий ниже, и если вам понравилось видео не забудьте подписаться и спасибо за наблюдение .
Источник: https://www.youtubesubsearch.com/videos/K4qsX_geCic/How-To-Install-Python-3-on-CentOS-7
How-to install Python 3.5.1 on CentOS 7
CentOS 7 has Python 2.7 installed out of the box and is used by the system itself to enable quite a few handy commands, such as yum.
As a Python coder I too have been struggling to decide between Python 2 and Python 3 for new projects. I made the transition to Python 3 during last year, for the benefits it gives me out of the box, e.g. default Unicode support. Read more here and here. It’s worth to note, that not all projects are supporting Python 3, yet.
So, how can I run my apps on server, which does not have Python 3 installed without breaking the system (by replacing system Python 2.7)?
Let’s get started.
Install the necessary utilities
This guide assumes, that you are working on updated CentOS 7 server with a user with sudo priviledges.
$ sudo yum install yum-utils make wget
Install missing dependencies and set up a necessary build environment for Python 3
$ sudo yum-builddep python
Download and install Python 3.5.1 from source
I chose to install Python 3 from source, since yum (from EPEL repo) does not provide version 3.5 yet.
I work in dir /home/user/source.
To download the source tarball
$ wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
Decompress the package
$ tar xzf Python-3.5.1.tgz
Compile the sources
cd Python-3.5.1
./configure
make
… And finally install Python 3.5.1. This will install Pip (The Python package manager, which we all love) too. Note! I do the install with altinstall to make sure I do not mess with the system Python.
$ sudo make altinstall
Ready to test:
# This should return the system Python version
$ python –V
Python 2.7.5
… as it does. # This should return the Python 3 version
$ python3.5 –V
Python 3.5.1
That’s it. Now I have Python 3 ready run my apps!
Epilogue
Few additional notes.
Alias
Few aliases, which helps in the long run. Add these to your .bashrc
alias python3='/usr/local/bin/python3.5'
alias pip3='/usr/local/bin/pip3.5'
# (without this sudo does not see aliases)
alias sudo='sudo '
Virtualenv tutorial
How to create a new virtualenv with Python 3:
- Install virtualenv globally with $ sudo pip3 install virtualenv
- In project home (e.g. /home/user/projects/) run $ virtualenv -p python3.5 demoproject
- Activate the virtualenv to use with $. demoproject/bin/activate
Источник: https://janikarhunen.fi/how-to-install-python-3-5-1-on-centos-7.html
CentOs7 Python 3.4 Способ установки
Это сообщение относится к этому вопросу, когда меня попросили объяснить, как я установил python3 в свою систему. Я пытался установить python3 в свою систему для целей разработки. Что-то пошло не так по линии, и теперь моя система не распознает установку по умолчанию python или установку python 3.4. Также такие приложения, как yum, также повреждены.
sudo apt-get install curl git-core gcc make zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libssl-dev sudo yum install scl-utils sudo wget https://www.softwarecollections.org/en/scls/rhscl/python33/epel-7-x86_64/download/rhscl-python33-epel-7-x86_64.noarch.rpm sudo yum install rhscl-python33-*.noarch.rpm
Кроме того, строка, которую я добавила и позже удалила из моего .bashrc-файла, была
alias python='/opt/rh/python33/root/usr/bin/python3.3'
В ретроспективе я предполагаю, что это должно было быть «python3.4», но в любом случае, я предположил, что потенциально неправильно, что просто комментирование этой строки удалит ее эффект.
Edit: Также, если память служит, apt-get не имеет значения, потому что я пытался установить его неправильно, поэтому я действительно не должен был включать его здесь.
Редактировать Добавлены выходы из команд:
Просто введите «python»:
-bash: python: command not found
which python дает:
/usr/bin/which: no python in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/myusername/.local/bin:/home/myusername/bin)
Однако есть установка python как в /usr/bin и в /usr/sbin .
alternatives –list | grep -i python alternatives –list | grep -i python дает:
python auto /usr/bin/python3.4
-v python ничего не возвращает.
type -a python дает:
-bash: type: python: not found
declare -p PATH выходы
declare -x PATH=”/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/myusername/.local/bin:/home/myusername/bin”
Кажется, у меня есть /usr/bin/python :
$ ls -l /usr/bin/python lrwxrwxrwx 1 root root 24 Jun 25 15:39 /usr/bin/python -> /etc/alternatives/python
но:
$ ls -l $(readlink -f /usr/bin/python) дает:
ls: cannot access /usr/bin/python3.4: No such file or directory
Я не знаю, является ли это актуальным, но /etc/alternatives/python был розовый, глядя в терминал.
ls -l /usr/local/bin/` prints `-rwxr-xr-x 1 root root 101 Sep 4 2014 2to3-3.4 -rwxr-xr-x 1 root root 241 Sep 4 2014 easy_install-3.4 -rwxr-xr-x 1 root root 99 Sep 4 2014 idle3.4 -rwxr-xr-x 1 root root 213 Sep 4 2014 pip3.4 -rwxr-xr-x 1 root root 84 Sep 4 2014 pydoc3.4 -rwxr-xr-x 2 root root 17544 Sep 4 2014 python3.4 -rwxr-xr-x 2 root root 17544 Sep 4 2014 python3.4m -rwxr-xr-x 1 root root 3066 Sep 4 2014 python3.4m-config -rwxr-xr-x 1 root root 236 Sep 4 2014 pyvenv-3.4
Также,
/opt/rh/python33/root/usr/bin/python3.3
Возвращает:
/opt/rh/python33/root/usr/bin/python3.3: error while loading shared libraries: libpython3.3m.so.1.0: cannot open shared object file: No such file or directory
Источник: http://fliplinux.com/centos7-python-3-4.html
How to install Python3 on CentOS
Question: I am trying to install a Python app that requires python3 on CentOS system. However, my CentOS only has python 2.X installed, but not python 3.X.
How can I install python3 on CentOS?
As of the latest CentOS 7, the default Python version still remains python 2.7, and python3 is not available in base repositories.
If you need to use python3 as part of Python application dependency, there are several ways to install python3 on CentOS.
Method One: Build and Install Python3 from the Source
You can always build python3 from its source manually. Since you can choose the version of python3 to install, this is the surest way to meet Python dependency requirement.
Here is how you can build and install python3 from the source.
First, install minimum necessary tools:
$ sudo yum install yum-utils
Then using yum-builddep, set up a necessary build environment for python3 and install missing dependencies. The following command will automatically take care of that.
$ sudo yum-builddep python
Now download the latest python3 (e.g., python 3.5) from https://www.python.org/ftp/python/
$ curl -O https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
Finally, build and install python3 as follows. The default installation directory is /usr/local. If you want to change this to some other directory, pass “–prefix=/alternative/path” parameter to configure before running make.
$ tar xf Python-3.5.0.tgz $ cd Python-3.5.0 $ ./configure $ make
$ sudo make install
This will install python3, pip3, setuptools as well as python3 libraries on your CentOS system.
Python 3.5.0
If you want to use python3 as your default Python interpreter, you can define the following alias in your .bashrc.
alias python='/usr/local/bin/python3.5'
Method Two: Install Python3 from EPEL Repository
The latest EPEL 7 repository offers python3 (python 3.4 to be exact). Thus if you are using CentOS 7 or later, you can easily install python3 by enabling EPEL repository as follows.
$ sudo yum install epel-release
Then install python 3.4 and its libraries using yum:
$ sudo yum install python34
Note that this will not install matching pip. To install pip and setuptools, you need to install them separately as follows.
$ curl -O https://bootstrap.pypa.io/get-pip.py
$ sudo /usr/bin/python3.4 get-pip.py
Method Three: Install Python3 from Software Collections (SCL)
Another way to install python3 is via enabling Software Collections (SCL) repository. The SCL repository is available for CentOS 6.5 or later, and the latest SCL offers python 3.3. Once you enable the SCL repository, go ahead and install python3 as follows.
$ sudo yum install python33
To use python3 from the SCL, you need to enable python3 on a per-command basis as follows.
$ scl enable python33
You can also invoke a bash shell with python3 enabled as the default Python interpreter:
$ scl enable python33 bashDownload .postlight.com”>
Источник: http://ask.xmodulo.com/install-python3-centos.html
How to Install Python 3 on CentOS 7
This tutorial will guide you through installing Python 3 on a CentOS 7 system using the Software Collections (SCL) along side the distribution default Python version 2.7. We will also show you how to create a Python virtual environment.
Python is one of the most popular programming languages in the world, with its simple and easy to learn syntax Python is a great choice for beginners and experienced developers. Python is quite versatile programming language, you can use it to do almost anything you want, write small scripts, build games, develop websites, create machine learning algorithms, analyze data and more.
Many popular applications and websites including YouTube, DropBox, Reddit, Quora, Instagram, Pinterest have been developed using Python.
While Python 2 is well-supported and active, Python 3 is considered to be the present and future of the language.
Enable Software Collections (SCL)
Software Collections, also known as SCL is a community project that allows you to build, install, and use multiple versions of software on the same system, without affecting system default packages. By enabling Software Collections you will gain access to the newer versions of programming languages and services which are not available in the core repositories.
CentOS 7 ships with Python 2.7.5 which is a critical part of the CentOS base system. SCL will allow you to install newer versions of python 3.x alongside the default python v2.7.5 so that system tools such as yum will continue to work properly.
In order to enable SCL we need to install the CentOS SCL release file. It is part of the CentOS extras repository and can be installed by running the following command:
sudo yum install centos-release-scl
Installing Python 3 on CentOS 7
Now that we have access to the SCL repository we can install any Python 3.x version we need. Currently the following Python 3 collections are available:
- Python 3.3
- Python 3.4
- Python 3.5
- Python 3.6
In this tutorial we will install Python 3.6 which is the latest version available at the time of writing. To do so type the following command on your CentOS 7 terminal:
sudo yum install rh-python36
Using Python 3
If you check the Python version by typing:
You will notice that Python 2.7 is the default Python version in your current shell.
To access Python 3.6 you need to launch a new shell instance using the Software Collection scl tool:
scl enable rh-python36 bash
What the command above does is calling the script /opt/rh/rh-python36/enable which changes the shell environment variables.
If you check the Python version again now you’ll notice that Python 3.6 is the default version.
It is important to point out that Python 3.6 is set as the default Python version only in this shell session. If you exit the session or open a new session from another terminal Python 2.7 will be the default Python version.
Development tools are required for building Python modules, you can install the necessary tools and libraries by typing:
sudo yum groupinstall 'Development Tools'
Creating Virtual Environment
Python Virtual Environments allows you to install Python modules in an isolated location for a specific project, rather than being installed globally. This way you do not have to worry of affecting other Python projects.
The preferred way to create a new virtual environment in Python 3 is by executing the venv command.
Let’s say we want to create a new Python 3 project called my_new_project inside our user home directory and matching virtual environment.
First create the project directory and switch to it:
mkdir ~/my_new_project
cd ~/my_new_project
Activate Python 3.6 using the scl tool:
scl enable rh-python36 bash
From inside the project root run the following command to create a virtual environment named my_project_venv:
python -m venv my_project_venv
To use the virtual environment we need to activate it, by typing:
source my_project_venv/bin/activate
After activating the environment, the shell prompt will be prefixed with the name of the environment:
(my_project_venv) [email protected]:~/my_new_project$
Starting with Python 3.4, when creating virtual environments, pip the package manager for Python is installed by default.
Conclusion
You should now have Python 3 programming environment setup on your CentOS 7 machine and you can start developing your Python 3 project.
You can also read about how to Install Odoo 11 on CentOS 7 and see an example of how to use Python 3 virtual environment to run Python software on a CentOS 7 server.
If you have any questions or feedback, feel free to comment below.
python pip virtenv centos
Источник: https://linuxize.com/post/how-to-install-python-3-on-centos-7/
Learn to install PYTHON 3.6 on CentOS 7
Python is one of the famous programming language & it has been gaining more popularity especially since the advent of new technologies like Artificial Intelligence, Internet of things etc. It is now being adopted in almost all the industries, all across the globe. What is makes it more popular is the fact that it is one of the easiest programming language to learn & adopt.
If thinking from System Administration point of view, it is used in scripting & for tools puppet, chef etc. Thus making it one of the most sought after skill for a System Administrator. In this tutorial, we will learn to install Python 3.6, which is the latest version of python on Centos 7 machine.
So let’s get going ……..
( Also Read : Complete “Beginners to PRO” guide for GIT Commands )
Installation
As Python 3.6 is still not available via default yum repositories, so there are two ways by which we can install Python 3.6 on Centos 7,
1- By compiling from source method
Before we can compile the source packages for python 3.6, we need to make sure that we have all the dependencies installed on our system. To install the required packages , open terminal & execute
$ yum groupinstall “development”
& also install
$ yum install zlib-devel
Once the packages have been installed, we will now download the python source package,
$ wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
Now extract the package,
$ tar -xJf Python-3.6.0.tar.xz
Next, we will compile the source packages & install it,
$ cd Python-3.6.0
$ ./configure
$ make
$ make install
After the installation completes, you will have Python 3.6 installed on your Centos 7 machine.
2- By using IUS (Inline with upstream stable) method
Now the second method to install python 3.6 is somewhat not that popular, & is known to very few but it will get the work done. In this method , we will first install IUS. IUS or Inline with Upstream Stable, provides rpm for some newer version of softwares including python 3.6. To install IUS on your Centos machine, execute
$ yum -y install https://centos7.iuscommunity.org/ius-release.rpm
Once the IUS installation has completed, we can use yum to install python on our systems,
$ yum install python36u
This will install python on the system.
Now to launch python on your machine after the installation, open terminal & type
$ python3
That’s it guys, we are planning to start a learning series for python & will update on that soon. For now please do leave your valuable feedback & queries in the comment box below.
Источник: https://linuxtechlab.com/learn-install-python-3-6-centos-7/
Как установить Python 3.6.4 на CentOS 7
Мы покажем вам, как установить Python 3.6.4 на CentOS 7. Python лежит в основе многих популярных веб-сайтов и программ – YouTube, Instagram и даже Yum на CentOS, чтобы назвать несколько. Все они полагаются на надежность и производительность Python для выполнения множества задач одновременно.
Python – это объектно-ориентированный язык программирования общего назначения, предназначенный для использования в качестве программного решения практически для всех видов проблем. Однако предварительно установленная версия Python, найденная в CentOS 7, намного старше.
Чтобы иметь последнюю версию Python, пользователю придется установить ее вручную.
В этом уроке мы покажем вам два метода установки Python версии 3.6.4 на вашем компьютере CentOS 7. Причина в том, что существует два метода, потому что Python 3.6.
4 не появляется по умолчанию во встроенных репозиториях Yum.
Таким образом, мы можем либо скомпилировать Python на нашей машине из исходного кода, либо добавить репозиторий с предварительно скомпилированной версией Python для CentOS 7.
Метод 1: установить Python 3.6.4 на CentOS 7 из репозитория
Это более простой способ для установки Python на вашем компьютере. Здесь мы просто добавляем репозиторий, который имеет предварительно скомпилированную версию, готовую для установки. В этом случае мы добавляем Встроенный с Upstream Stable репозиторий, проект сообщества, целью которого является внедрение новых версий программного обеспечения в системы на основе RHEL.
Шаг 1: Откройте терминал и добавьте репозиторий в свою установку Yum
sudo yum install -y https://centos7.iuscommunity.org/ius-release.rpm
Шаг 2: обновите Yum, чтобы завершить добавление репозитория
Обновление sudo yum
Шаг 3: Загрузите и установите Python
Это не только установит Python – он также установит pip, чтобы помочь вам в установке надстроек.
sudo yum install -y python36u python36u-libs python36u-devel python36u-pip
После выполнения этих команд просто проверьте, была ли установлена правильная версия Python, выполнив следующую команду:
python3.6 -V
Теперь вы закончили установку Python 3.6.4 на вашем компьютере CentOS 7, а также установили собственный инструмент управления пакетами Python под названием pip.
Метод 2: компиляция Python 3.6.4 на CentOS 7 из исходного кода
Это более сложный метод двух, и потребуется больше времени, однако этот метод дает вам больше контроля над тем, что установлено, а что нет. Он также может быть более безопасным время от времени, в зависимости от того, откуда загружен программный пакет.
важно: Имейте в виду, что ваш менеджер пакетов Yum не будет знать что вы установили Python 3.6.4 (или любое другое программное обеспечение), если вы устанавливаете программное обеспечение, вручную компилируя исходный код. Это означает, что нет обновлений будут доступны для вашего установленного вручную программного обеспечения.
Шаг 1: Установите инструменты разработки, необходимые для компиляции
Во-первых, нам понадобятся инструменты, позволяющие компилировать и устанавливать программы из их исходного кода. Для этого мы установим группу «Инструменты разработки» через сам Yum:
sudo yum groupinstall -y “Средства разработки”
Как только это будет сделано, перейдите к шагу 2.
Шаг 2: Загрузите исходные файлы Python
Во-первых, нам нужно создать каталог, в котором будет проходить наша установка. Создайте каталог с выбранным именем и введите его в каталог. После того, как вы находитесь в своем новом каталоге, введите следующую команду для загрузки сжатого исходного файла Python.
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz
После завершения загрузки файла распакуйте файл с помощью tar, затем введите новый созданный каталог:
tar -xJf Python-3.6.4.tar.xz cd Python-3.6.4
Шаг 3: Запустите сценарий конфигурации
Используйте следующую команду, чтобы программа установки проверила вашу систему до начала процесса установки.
. / Настроить
Эта команда гарантирует, что установка будет работать, а также создаст специальный «makefile», уникальный для вашей системы. Этот make-файл – это то, что вы будете использовать для установки Python в вашу систему.
Шаг 4: установите Python
Теперь мы можем, наконец, выполнить make-файл. Выполните следующую команду для установки Python в вашу систему. Примечание. Это займет несколько минут. Скорость компиляции и установки будет зависеть от скорости вашего процессора.
Сначала мы запускаем команду make, которая компилирует программу.
сделать
Затем, как только это будет завершено, мы сможем запустить команду установки.
сделать установку
Как только эта команда закончится, вы успешно установили Python вместе с pip и setuptools. Отсюда легко создать виртуальную среду, и теперь возможно кодирование и выполнение последнего кода Python.
Оригинал статьи
Источник: https://websetnet.net/ru/install-python-3-6-4-centos-7/
Как установить Pip на CentOS 7
В этой статье мы покажем вам, как установить и настроить Pip на сервере CentOS 7. Для тех из вас, кто не знает, Команда Pip является инструментом для установки и управления пакетами Python, таких как те индексов пакетов Python.
С помощью pip вы можете также установить пакет конкретной версии. Самое главное pip имеет функцию управления, полный список пакетов и соответствующие номера версий, возможные с помощью файла «требования».
Она выполняет ту же самую основную работу как easy_install, но с некоторыми дополнительными функциями.
В данной статье предполагается, что вы по крайней мере, имеете базовые знания Linux, знаете, как использовать оболочку, и, самое главное, вы размещаете свой сайт на своем собственном VPS.
Установка очень проста и предполагает, что вы работаете в корневой учетной записи, если вы не можете добавить «sudo» к командам, чтобы получить привилегии суперпользователя.
Мы покажем вам шаг за шагом установку Pip Python на сервере CentOS 7.
Установка Pip на CentOS 7
Шаг 1. Установка Pip
Прежде всего, давайте начнем с обновления вашей системы.
yum clean all
yum install epel-release
yum -y update
Шаг 2. Установка Pip
Способ 1.
Установите pip с помощью команды Yum:
yum -y install python-pip
После завершения установки вы можете убедиться, что pip была успешно установлена с помощью следующей команды:
Способ 2.
Установка Pip с помощью Curl и Python:
curl “https://bootstrap.pypa.io/get-pip.py” -o “get-pip.py”
Теперь установите pip с помощью следующей команды:
python get-pip.py
После завершения установки вы можете проверить правильность установки:
pip -V
Шаг 3. Как использовать pip команду
После установки пакета python-pip, команда pip будет доступна в системе. Есть несколько вариантов, доступных с командой pip:
Для установки пакета python:
pip install packageName
Для удаления установленного пакета с помощью pip:
pip uninstall packageName
Для поиска пакета:
pip search packageName
Для более подробных вариантов и примеров использования вы можете использовать флаг -help:
[[email protected] ~]# pip –help Usage: pip [options] Commands: install Install packages. uninstall Uninstall packages. freeze Output installed packages in requirements format. list List installed packages. show Show information about installed packages. search Search PyPI for packages. wheel Build wheels from your requirements. zip DEPRECATED. Zip individual packages. unzip DEPRECATED. Unzip individual packages. bundle DEPRECATED. Create pybundles. help Show help for commands. General Options: -h, –help Show help. -v, –verbose Give more output. Option is additive, and can be used up to 3 times. -V, –version Show version and exit. -q, –quiet Give less output. –log-file Path to a verbose non-appending log, that only logs failures. This log is active by default at /home/sharad/.pip/pip.log. –log Path to a verbose appending log. This log is inactive by default. –proxy Specify a proxy in the form [user:passwd@]proxy.server:port. –timeout Set the socket timeout (default 15 seconds). –exists-action Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup. –cert Path to alternate CA bundle.
[[email protected] ~]#
Поздравления! Вы успешно установили Pip. Спасибо за использование этой статьи для установки Pip Python на системе CentOS 7. Для получения дополнительной помощи или полезной информации, мы рекомендуем вам зайти на официальный веб – сайт на Python.
Источник: https://andreyex.ru/centos-7/kak-ustanovit-pip-na-centos-7/
Настройка локальной среды разработки для Python 3 в CentOS 7 | Блог
В этой статье мы расскажем вам как настроить операционную систему, поставить в нее Python 3, а также сделать виртуальную среду для разработки приложений.
Многофункциональный язык Python предназначен для разработки разный программных проектов. Его отличает простота инсталляции, понятный синтаксис и мгновенные сообщения об ошибках. Именно поэтому язык программирования любят новички и опытные программисты. Последней редакцией языка сейчас принято считать Python 3.
Прочитав статью, вы узнаете, как поставить Python 3 на CentOS 7, а также настроить среду разработчика посредством консоли. Для этого предварительно нужно создать не-root пользователя, у которого будут права суперпользователя.
1) Как подготовить систему?
Мы будем использовать командную строку для написания команд. Есть и другой способ – с помощью графического интерфейса CentOS 7. Попасть в командную строку вы сможете в меню, выбрав пункт Приложения → Служебные программы → Терминал.
В первую очередь необходимо провести обновление стандартных приложений системы. Для этой цели пригодится пакетный менеджер yum (Yellowdog Updater Modified). Он способен работать с пакетами систем Linux, в основе которых лежит Red Hat, инсталлируя, удаляя, и обновляя пакеты. Сначала yum нужно обновить с помощью:
sudo yum -y update
Флаг -y применяется для автоматического положительного ответа на все вопросы, задаваемые системой. После этого ставим набор утилит yum-utils для расширения функционала yum. Наберите в консоли:
sudo yum -y install yum-utils
Нужно также поставить инструменты разработки CentOS, посредством которых мы будем собирать программы из исходного кода. Для этого нам потребуется команда:
sudo yum -y groupinstall development
2) Как установить и настроить Python 3?
Система CentOS – это производная от стабильной и надежной RHEL (Red Hat Enterprise Linux). Именно поэтому в репозиториях вы найдете только стабильные, проверенные версии пакетов, а именно Python 2.
Для загрузки Python 3нам нужно будет поставить IUS (Inline with Upstream Stable). Сервис предоставляет для RPM (Red Hat Package Manager) самые актуальные версии пакетов.
Поставить IUS посредством yum получится за счет:
sudo yum -y install https://centos7.iuscommunity.org/ius-release.rpm
Когда инсталлируется IUS, можете приступать к загрузке и установке последней версии языка Рython. На момент написания материала – это 3.6.1.
yum -y install python36u-3.6.1
После завершения инсталляции, проверьте, чтобы все работало правильно. Запросим версию языка:
python3.6 -V
Если все стало как надо, на дисплее появится строка:
Python 3.6.1
Еще нам понадобится пакетный менеджер для Python pip. Наберите в консоли для его установки:
yum -y install python36u-pip
Pip получится задействовать для инсталляции и управления пакетами, которые вы используете в разработке проектов. Для установки пакета посредством менеджера наберите в консоли:
pip3.6 install package_name
Рackage_name заменяйте именем пакета либо библиотеки. Например, для NumPy код в командной строке будет выглядеть так:
pip3.6 install numpy
Следующий шаг – это инсталляция пакета python36u-devel. Он содержит файлы заголовков и библиотеки, необходимые для разработки проектов с помощью Python 3. Используйте команду:
yum -y install python36u-devel
Пакет pyvenv входит в набор python36u-devel. С его помощью получится сделать изолированную виртуальную среду для ваших разрабатываемых проектов.
3) Как создать виртуальную среду?
Мы поставили все компоненты Python на нашу локальную машину. Следующий шаг – создание среды разработки посредством pyvenv. Она обеспечивает изолированное пространство для Python проектов, благодаря чему они могут иметь индивидуальный набор зависимостей.
Проектам даже позволено использовать различающиеся версии одной программы без ущерба функционирования системы. Кроме того, среда разработки дает возможность управления проектами на python, а также обрабатывать разные пакетные версии.
Это может быть важно, если применяются сторонние пакеты. В системе вы можете создавать любое число виртуальных сред Python. Каждая из них является каталогом, внутри которого располагаются несколько сценариев, поэтому он и может применяться в качестве среды разработки.
Чтобы выбрать либо создать каталог, наберите в командной строке:
mkdir environments cd environments
Теперь создадим внутри каталога виртуальную среду разработки с помощью:
pyvenv-3.6 your_env
Вместо your_env вам нужно будет написать любое желаемое имя для среды разработки. Создадим новый каталог внутри с такими компонентами посредством команды:
bin include lib lib64 pyvenv.cfg
Данные файлы необходимы для того, чтобы провести изоляцию проекта от системы локальной машины. Благодаря этому, системные и файлы проекта не будут воздействовать друг на друга. Вы значительно облегчите себе процесс контроля версий, а также обеспечите доступ проектов к пакетным зависимостям. Включим виртуальную среду с помощью:
source my_env/bin/activate
Данная команда из каталога bin запустит сценарий activate. Командная строка будет выглядеть примерно так:
(your_env) [some_host@localhost] environments]$
Так вы сможете понять, в какой виртуальной среде разработки находитесь на данный момент. Имейте ввиду, что все команды, которые вы будете запускать в среде, будут доступны только в ней. Запомните, что вне виртуальной среды в Python 3 применяются команды pip3.6 и python 3.6, а внутри ее индексы можно опускать, набирая pip и python соответственно.
4) Как создать простую программу?
Чтобы проверить работоспособность виртуальной среды, сделаем простую программу, отвечающую «Hello Wolrd!». В текстовом редакторе нужно создать файл:
(your_env) [some_host@localhost] environments]$ vi hello.py
Чтобы перейти в режим вставки, наберите i. Потом следует добавить вот такую строчку:
print(“Hello, World!”)
Для выхода из режима вставки нужно нажать клавишу Esc. После этого наберите :х и Enter. Для сохранения файла и выхода из него. Теперь запустим программу посредством:
(youy_env) [some_host@localhost] environments]$ python hello.py
Если все сделано без ошибок, то программа выведет на экран:
Hello, World!
Для закрытия виртуальной среды вам нужно набрать в консоли:
deactivate
Таким образом вы вернетесь в общую командную строку системы. Если вы не допускали ошибок, то получите изолированную виртуальную среду для разработки Python на локальной машине CentOS. Приступайте к созданию новых приложений, совершенствуя свои навыки программирования.
Источник: https://abc-server.com/ru/blog/administration/local-dev-environment-in-centos-7/
How to Install Python 3.6.4 on CentOS 7
We’ll show you how to install Python 3.6.4 on CentOS 7. Python is at the core of many popular websites and programs – YouTube, Instagram, and even Yum on CentOS, to name a few. They all rely on Python’s reliability and performance to complete many tasks at a time.
Python is a general-purpose object-oriented programming language designed to be used as a software solution for almost all kinds of problems. However, the pre-installed version of Python found on CentOS 7 is a much older version.
In order to have the latest version of Python, the user will have to install it manually.
In this tutorial, we will show you two methods of installing Python version 3.6.4 on your CentOS 7 machine. The reason there are two methods is that Python 3.6.4 does not come by default in the built-in Yum repositories. So, we can either compile Python on our machine from the source code or add a repository that has a pre-compiled version of Python for CentOS 7.
Method 1: Install Python 3.6.4 on CentOS 7 From a Repository
This is the easier method of the two for installing Python on your machine. Here, we simply add a repository that has the pre-compiled version ready for us to install. In this case, we are adding the Inline with Upstream Stable repository, a community project whose goal is to bring new versions of software to RHEL-based systems.
Step 1: Open a Terminal and add the repository to your Yum install
sudo yum install -y https://centos7.iuscommunity.org/ius-release.rpm
Step 2: Update Yum to finish adding the repository
sudo yum update
Step 3: Download and install Python
This will not only install Python – but it will also install pip to help you with installing add-ons.
sudo yum install -y python36u python36u-libs python36u-devel python36u-pip
Once these commands are executed, simply check if the correct version of Python has been installed by executing the following command:
python3.6 -V
You have now finished installing Python 3.6.4 on your CentOS 7 machine, as well as installing a native Python package management tool called pip.
Method 2: Compiling Python 3.6.4 on CentOS 7 From Source Code
This is the more complicated method of the two, and will take more time – however, this method gives you more control over what gets installed and what doesn’t. It can also be more secure at times, depending on where the software package is downloaded from.
Important: Keep in mind that your Yum package manager will not know that you have installed Python 3.6.4 (or any other software) if you install software by manually compiling the source code. This means that no updates will be available for your manually installed software.
Step 1: Install the development tools needed for compilation
First, we will need the tools in order to be able to compile and install programs from their source code. To do this, we will install the group “Development Tools” through Yum itself:
sudo yum groupinstall -y “Development Tools”
Once this is done, move on to step 2.
Step 2: Download the Python source files
First, we need to create a directory in which our install will take place. Make a directory with a name of your choosing, then enter the directory. Once you are in your new directory, enter the following command to download the compressed Python source file.
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz
Once the file is finished downloading, uncompress the file by using tar, then enter into the new directory that was just created:
tar -xJf Python-3.6.4.tar.xz cd Python-3.6.4
Step 3: Run the configuration script
Use the following command to have the installation software check your system before actually starting the installation process.
./configure
This command ensures that the install will work, along with creating a special ‘makefile’ that is unique to your system. This makefile is what you will use to install Python onto your system.
Step 4: Install Python
Now we can finally execute the makefile. Run the following command to install Python onto your system. Note: This will take a few minutes. The speed of the compilation and install will depend on the speed of your processor.
First, we run the ‘make’ command which compiles the program.
make
Then, once that is finished, we can run the installation command.
make install
Once this command finishes, you will have installed Python successfully, along with pip and setuptools. From here, creating a virtual environment is easy, and coding and executing the latest Python code is now possible.
Of course, you don’t have to install Python 3.6.4 on CentOS 7, if you use one of our high-speed Python VPS hosting plans – in which case you can simply ask our expert Linux admins to install Python 3.6.4 for you. They are available 24×7 and will take care of your request immediately.
PS.
Источник: https://www.rosehosting.com/blog/how-to-install-python-3-6-4-on-centos-7/