これは何?
作業を忘れる俺のための備忘録
pycharmからgitを操作する予定
これをやれば自分のパソコンを汚さず作業ができるようになる
だからやれ
とにかくやれ
git導入
gitはいろいろと便利だから使えるようになってるといいね
1.インストール
まずは、以下のサイトからGitをダウンロード
https://git-for-windows.github.io/
あとは道なりに進めばインスト―ル完了
詳しい道のりは説明がめんどくさいから調べて
2.ユーザ名とメールアドレスの登録
コンソールで
$ git config --global user.name "ユーザー名"
$ git config --global user.email "メールアドレス"
を打ち込むと登録が完了する
github側の作業
githubのアカウントを作成し、githubのホームページへ行き右上の"+"からnew repositoryでリポジトリを作成する
Repository nameで名前を決める
publicかprivateか決めてcreate repositoryをクリック
すると画面に意味深なurlが出てくるからそれをコピーしてターミナルへ
Codeからでもurlを発行できるからcloneしたときとかはここからやろう
gitのプロジェクトを置きたいディレクトリに移動をしてgit clone <url>
こうすることでgitと繋がったディレクトリができるのでpycharmでもなんでも開く
.gitignoreの作成
ディレクトリは完成したがこのままではなんでもgithubで共有されるので.gitignore
を作る
ディレクトリ直下に.gitignore
って名前のファイルを作る
https://github.com/github/gitignore/blob/master/Global/JetBrains.gitignore
JetBeain系列のIDEを使ってるなら上のソースコードをコピペする
他のIDEは知らん
共有したくないファイルのパスをここに追記する
これでメモなどの他人と共有したくないファイルがgit側に共有されなくなる
Docker側の作業
github側の作業が終わったら次はdockerの作業
インストール
これにDocker for desktopのインストールからpycharm連携まですべてが詰まってる
https://qiita.com/Denpa_Ghost/items/caeddaa29bd9d7514cce
docker-compose.ymlの作成
ディレクトリ直下にdocker-conpose.ymlを作って以下をコピペする
version: '3'
services:
app:
build: docker/python
tty: true
volumes:
- ./app/:/app
working_dir: /app
build:
がdockerfileの格納先の指定
tty:
が起動後待機状態にするか
falseや未記入で動いてるものがないとすぐに落ちるため必須
volumes:
がホスト機のフォルダとコンテナ内のフォルダをつなげる役割を持つ
左がホスト機、右がコンテナ内
ホスト側でフォルダがない場合新規に作成される
working_dir:
はデフォルトの作業場の指定
dockerfileの作成
docker-compose.ymlを作ったらbuild:
で指定したパスにdockerfileを作る
slackのbotを動かすなら以下をコピペする
FROM python:latest
RUN mkdir -p /app
RUN pip install slackbot
FROM
はdocker imageを設定する
RUN
はコンテナ生成後に入力するコマンドを入れる
docker imageに入ってない他のパッケージを入れたい場合などに使うといい
上記のならコンテナ生成後、appディレクトリを作成してslackbotのパッケージをインストールをする
主にlinuxのターミナルでできることならなんでもできる
コンテナの生成
ここまで来たらあとはコンテナを作るだけ
docker-compose.ymlがあるディレクトリ内で
docker-compose up --build -d
をすることでコンテナを生成できる
初回起動
docker-compose up --build -d
次回以降
docker-compose up -d
コンテナをまとめて止める
docker-copose stop
コンテナをまとめて消す
docker-compose down
コンテナとイメージをまとめて消す
docker-compose down --rmi
.pyの実行
プログラム作った実行したいときは
docker ps
で実行したいコンテナのnameをコピーして
docker exec -it <name> bash
でコンテナ内のターミナルへアクセスできる
あとは普通にpython main.py
などでpythonの実行をする
ターミナルへアクセスせずに実行をしたい場合は
docker exec -it <name> <プログラム名>
でターミナルへ入らずに実行ができる
終わりに
質問や文句があるなら荒川までお願いします
対応したりしなかったりします
これで快適python生活を楽しもう!