МЕРЗАВЕЦ и проекты Django

существует a -k параметр командной строки, но существует лучший способ сделать это. Корневой каталог каждого пользователя, инициализируют от /usr/share/skel. Если Вы создаете там www каталог затем каждый недавно созданный пользователь будет иметь его.

2
задан 29 October 2012 в 17:37
2 ответа

Я работаю с разработкой Django и GIT в течение 18 месяцев. В течение этого периода я пытался разместить у себя репозиторий git, а сегодня я использую GITHUB для работы. Это проще и экономит время за небольшие деньги. Посмотрите на мои соображения:

  • Если вы не являетесь экспертом по Linux и не имеете опыта в GIT, дешевле (считайте, что время - деньги) разместить ваш проект на GITHUB. У них есть бесплатный хостинг GIT для публичных проектов (любой может их клонировать / форкнуть). У них также есть (дешевый) платный хостинг GIT, если вы хотите иметь частный репозиторий.

  • GITHUB (или другая хостинговая компания GIT) упростит настройку репозиториев, чтобы вы могли научиться работать с GIT по мере его использования ( Другими словами, благодаря веб-интерфейсу вам не нужно изучать больше, чем базовый синтаксис командной строки GIT перед использованием GIT)

  • GIT - это система версий с распределенным управлением. Это означает, что каждое место, куда вы помещаете копию своего репозитория, будет иметь полную историю всего вашего кода, поэтому, если вы решите разместить свой собственный сервер GIT, не имеет значения размещать сервер DEV или PRD. Фактически, вы можете поместить его в свой собственный блокнот, не опасаясь потери данных, потому что у вас есть копия в DEV и PRD. Имейте в виду, что вы должны делать PULL-запросы на вашем DEV и на вашем сервере PRD с вашего сервера GIT.

  • Легко создавать сценарии FABRIC для обновления сервера DEV или PRD с вашего собственного компьютера. Все, что вам нужно сделать, это иметь что-то подобное в вашем fabfile.py:

    def deploy_production():
        with cd('/home/my_user/my_project'):
            run("git pull") # update to the newest version
            with prefix('source ~/.virtualenvs/my_env/bin/activate'):
                run('./manage.py collectstatic --noinput')
    def production():
        """
        Sets environment to production
        """
        continue = confirm('Updating the production environment, continue?', default=False)
        if not continue:
            abort('Good bye - thanks for doing nothing on production!')
        env.hosts = ['my_server.my_domain.com.br']
        env.key_filename = ['~/amazon/my_ssh_key.pem']
        env.user = 'ubuntu'

    # Use this to run fabric update procedure:
    fab production deploy_production
  • . Используйте virtualenv и virtualenvwrapper
  • , создайте файл с именем '.gitignore' в корне проекта и поместите файл (или шаблоны файлов), который вы не хочу управлять через GIT, например: * .pyc, .idea, .DS_Store (по одному на строку)

Надеюсь, это поможет, хороший вид!

Если вы сочтете эти ответы полезными, присвойте баллы.

Имейте в виду, что вы должны делать PULL-пакеты на вашем DEV и на вашем сервере PRD с вашего сервера GIT.

  • Легко создавать сценарии FABRIC для обновления сервера DEV или PRD с вашего собственного компьютера. Все, что вам нужно сделать, это иметь что-то подобное в вашем fabfile.py:

  •     def deploy_production():
            with cd('/home/my_user/my_project'):
                run("git pull") # update to the newest version
                with prefix('source ~/.virtualenvs/my_env/bin/activate'):
                    run('./manage.py collectstatic --noinput')
        def production():
            """
            Sets environment to production
            """
            continue = confirm('Updating the production environment, continue?', default=False)
            if not continue:
                abort('Good bye - thanks for doing nothing on production!')
            env.hosts = ['my_server.my_domain.com.br']
            env.key_filename = ['~/amazon/my_ssh_key.pem']
            env.user = 'ubuntu'
    
        # Use this to run fabric update procedure:
        fab production deploy_production
    
    • . Используйте virtualenv и virtualenvwrapper
    • , создайте файл с именем '.gitignore' в корне проекта и поместите файл (или шаблоны файлов), который вы не хочу управлять через GIT, например: * .pyc, .idea, .DS_Store (по одному на строку)

    Надеюсь, это поможет, хороший вид!

    Если вы сочтете эти ответы полезными, присвойте баллы.

    Имейте в виду, что вы должны делать PULL-пакеты на вашем DEV и на вашем сервере PRD с вашего сервера GIT.

  • Легко создавать сценарии FABRIC для обновления сервера DEV или PRD с вашего собственного компьютера. Все, что вам нужно сделать, это иметь что-то подобное в вашем fabfile.py:

  •     def deploy_production():
            with cd('/home/my_user/my_project'):
                run("git pull") # update to the newest version
                with prefix('source ~/.virtualenvs/my_env/bin/activate'):
                    run('./manage.py collectstatic --noinput')
        def production():
            """
            Sets environment to production
            """
            continue = confirm('Updating the production environment, continue?', default=False)
            if not continue:
                abort('Good bye - thanks for doing nothing on production!')
            env.hosts = ['my_server.my_domain.com.br']
            env.key_filename = ['~/amazon/my_ssh_key.pem']
            env.user = 'ubuntu'
    
        # Use this to run fabric update procedure:
        fab production deploy_production
    
    • . Используйте virtualenv и virtualenvwrapper
    • , создайте файл с именем '.gitignore' в корне проекта и поместите файл (или шаблоны файлов), который вы не хочу управлять через GIT, например: * .pyc, .idea, .DS_Store (по одному на строку)

    Надеюсь, это поможет, хороший вид!

    Если вы сочтете эти ответы полезными, присвойте баллы.

    2
    ответ дан 3 December 2019 в 11:51

    Я предлагаю вам использовать систему управления исходным кодом, такую ​​как git, как вы упомянули, выполнять свою работу локально и взглянуть на Fabric для развертывания. Вы можете использовать git checkout-index для локального экспорта кода (через код в файле fabfile) перед его отправкой на сервер с помощью команды типа fab dev deploy . Когда вы будете готовы к развертыванию в производственной среде fab prod deploy . Вы можете поместить код в fabfile, чтобы переместить исходный код в нужное место, обновить зависимости, такие как Django (например, через pip), перезапустить uwsgi и т. Д.

    0
    ответ дан 3 December 2019 в 11:51

    Теги

    Похожие вопросы