pip install -r requirements.txt
.virtualenv
, но сама директория с virtualenv
должна быть добавлена в .gitignore
.settings.py
, но также, при наличии settings_local.py
в той же директории, настройки из settings_local.py
должны переопределять настройки в settings.py
. Т.е. если есть файл settings_local.py
, то определенные в нем параметры имеют больший приоритет. Сам файл settings_local.py
добавляется в .gitignore
. Таким образом у каждого девелопера и на бета сервере можно использовать кастомные настройки, например для соединения с БД.#
# MyBaseimage Dockerfile
#
# Pull base image.
FROM ubuntu:14.04
MAINTAINER Your Name <your.email@gmail.maybe>
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install -y language-pack-en
ENV LANGUAGE en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LC_ALL en_US.UTF-8
RUN locale-gen en_US.UTF-8
RUN dpkg-reconfigure locales
RUN echo "Etc/UTC" > /etc/timezone
RUN dpkg-reconfigure -f noninteractive tzdata
RUN apt-get install -y build-essential
RUN apt-get install -y python python-dev python-setuptools python-pip python-virtualenv
RUN apt-get install -y libxml2-dev wget
RUN apt-get install -y libpcre3
RUN apt-get install -y libpcre3-dev
RUN apt-get install -y libssl-dev
RUN apt-get install -y libncurses5-dev
RUN apt-get install -y git git-core
RUN apt-get install -y libpq-dev
# install nginx
RUN apt-get install -y software-properties-common python-software-properties
RUN apt-get update
docker build -t your_docker_account/your_baseimage .
#
# MyApp Dockerfile
#
# Pull base image.
FROM your_docker_account/your_baseimage
MAINTAINER Your Name <your.email@gmail.maybe>
# Set instructions on build.
RUN virtualenv /env
ADD ./ /code
RUN cd /code; /env/bin/python setup.py install
RUN cp /code/config/config.yml.docker_example /etc/code/config.yml
# Expose ports.
EXPOSE 8484
WORKDIR /code
CMD ["/env/bin/python", "app.py"]
docker build -t your_docker_account/your_app_container .
docker run -p :5432:5432 --name my_postgresdb_container -e POSTGRESQL_DB=mydb_name -e POSTGRESQL_USER=mydb_user -e POSTGRESQL_PASS=super_secret_password -d kamui/postgresql
docker run -d -p :5000:5000 \
--name my_app_container \
--link my_postgresdb_container:postgresdb \
-e DOCKERDB_ENV_POSTGRESQL_DB=mydb_name \
-e DOCKERDB_ENV_POSTGRESQL_USER=mydb_user \
-e DOCKERDB_ENV_POSTGRESQL_PASS=super_secret_password \
your_docker_account/your_app_container
docker exec -it your_app_container /bin/bash
docker logs -f your_app_container
your_app:
build: .
links:
- postgresdb
ports:
- "5000:5000"
environment:
DOCKERDB_ENV_POSTGRESQL_DB: mydb_name
DOCKERDB_ENV_POSTGRESQL_USER: mydb_user
DOCKERDB_ENV_POSTGRESQL_PASS: super_secret_password
postgresdb:
image: kamui/postgresql
ports:
- "5432:5432"
environment:
POSTGRESQL_DB: mydb_name
POSTGRESQL_USER: mydb_user
POSTGRESQL_PASS: super_secret_password
docker-compose up
Сейчас попробую сделать короткий список неплохой литературы (извините, если кого-то повторю ):
1. Брюс Эккель - "Философия Java"
2. Роберт Седжвик, Кевин Уэйн - Algorithms / Алгоритмы на Java
3. К. Сьерра, Б. Бейтс - Изучаем Java (Мировой компьтерный бестселлер)(2012).
4. Хорстманн К., Корнелл Г. - Java 2. Основы (Библиотека профессионала)(2 тома)
5. Ноутон П., Шилдт Г. - Java. Наиболее полное руководство.
Также неплохим приложением будут книги:
1. Мартин Р. - Чистый код. Создание, анализ и рефакторинг.
2. Гудлиф Питер - Ремесло программиста. Практика написания хорошего кода.
3. Фримен Эр., Фримен Эл., Бейтс Б., Сьерра К. - Паттерны проектирования.
Следует отметить что основным источником также является документация Oracle, которую можно найти на их официальном сайте (http://docs.oracle.com/javase/).
Еще к неплохим веб-ресурсам, которые могут оказать огромную помощь при изучении java, можно добавить:
http://stackoverflow.com/ - форум, где можно найти ответы на интересующие тебя вопросы из области программирования (в том числе и Java).
http://kharkovitcourses.blogspot.com/p/java-core-course.html - вроде норм курсы (канал youtube - http://www.youtube.com/channel/UCuIctN7x71qam9K_ZxS1W2A )
Также можно искать курсы по Java здесь:
http://www.intuit.ru
http://hexlet.org
Желательно также вначале ознакомится с Java Code Conventions, которые можно найти на сайте Oracle.
Cпасибо за внимание и успехов в изучении Java.