diadia

興味があることをやってみる。自分のメモを残しておきます。

環境構築

djangoとvuejsをcdn以外の方法で共存させる

npmにvueを入れて構築する方法を試みる。djangoはdjango rest frameworkを使う。 今回気になる事項は、 どうやってdjangoとvueをcdn以外の方法で共存させる環境を構築するのか どういう仕組でdjangoとvueが連携する仕組みになっているのか vueを使うにあたり…

typescriptのみで構築してみた

webpackやnpmの仕組みを分かっていないので一番シンプルな構成でtypescriptを実装する方法を試してみる。 参考資料 以下を記事に従って環境を構築してみた。プロジェクト名はsssとして作成してみた。 最新版TypeScript+webpack 5の環境構築まとめ(React, Vue…

npmに関して分かったこと

右も左も分からないnpmについて少しずつ試してみて分かったことを書き溜める。 パッケージのバージョンを変更をする 1 package.json内のパッケージのバージョンを編集する。 $ vi package.json 2 変更を反映する $ npm update npm install について npm inst…

npmのpackage.jsonについて分かったこと

package.jsonには、scripts項目が存在する。 どんなものか? これはnpm runコマンドのあとに続行するコマンドを定義することができるようになる。 $ npm init 言うまでもないが、上記のコマンドを実行するとそのディレクトリにpackage.jsonというファイルが生…

typescriptメモ

基本の型(Basic Types, Primitive Type) TypeScript: Handbook - Basic Types Boolean Number String Array Tuple Enum Unknown Any Void Null and Undefined Never Object アロー関数の戻り値の型定義について理解していない。 環境構築 書いたtypescriptを…

terraform 既存のリソースを使うことについて

今まで勝手に思ってたことにterraformでインフラを立ち上げるときには、terraform内でリソースを生成し、それを組み合わせて環境を作り上げないといけないと思っていた。 しかしながら一度作成したリソースを消さなければ再利用することができる事がわかった…

ECRにpushとpullを試みたときのメモ

ECSを使うためにはどうやらECRが必要だということが判明した。 ECRはdockerhubのようなdocker Imageのコンテナのリポジトリサービスであるようだ。 とりあえずpushとpullをできるようにしたい。 ドキュメントを読んでみると、ECRにpush, pullをするためには…

EC2インスタンスに複数のアパッチコンテナを起動して接続を試みる

今まで一つのサーバーにwebサーバーなどのソフトウェアが一つずつ入っている状況が自然なことだと考えてきたので、同じソフトウェアが同時に動く環境を用意し、いわゆるコンテナという概念を体感してみた。 方法としてはec2インスタンスにcontainerを3つ追加…

terraformを使えるようにする設定

IAMでterraformからインフラを作成するためのユーザーを作成する。 作成するとアクセスキーとシークレットキーが手に入るので、これを環境変数に加えておくこと。 さらにはデフォルトのリージョンも環境変数として定める。 vi ~/.bash_profile #追加 #Terraf…

基本の基本 EC2にssh接続する(復習)

コンテンツ マネージドコンソールを使ってEC2を立ち上げ、SSH接続を行う TERRAFORMから同じことを実現させる 一番最初の基本形としてEC2インスタンスを立ち上げて、ssh接続するまでをマネージドコンソールでどのようにセッティングすればよいかメモしておく…

supervisorについてメモ

ドキュメント Supervisor: A Process Control System — Supervisor 4.2.0 documentation supervisorは何なのか? これはプロセス管理のツールである。 fabricを使った自動デプロイスクリプトを書いては見たもののgunicornのプロセスを切ってから新たに立ち上…

AWS学習メモ

知識の整理の方法をよく考えたい。 実現したい実装に対して、概念による実装方法があり、具体的な実装方法がある。 具体的な実装方法はコンソールによる具体的な実装方法とteraformによる実装方法である。これらの棲み分けを意識して分けてメモをしていきた…

fabricでデプロイするために得られた知見

まずfabricでできることはなにか? fabricでできることはshellスクリプトでもできる。シェルスクリプトが書ければfabricをあえて学習する必要ないと思われるが、fabricを使うのはpythonを使うので学習コストが低いし、pythonで書くのでコードの見通しが良く…

circleciのsshキーを登録する

circleciのコンソールにsshキー(秘密の鍵)を登録する事ができる。 しかしこの秘密の鍵はpem形式でなければコンソールでエラーが出てしまう。したがってpem形式のキーを別途作成し登録する必要があった。 手順; 1. pem形式の鍵を作成する 1. サーバーに公開鍵…

CircleCIのメモ

CircleCI環境変数について circleciの環境変数の定め方は2通りある。 一つはconfig.ymlで環境変数をハードコーディングで定める方法である。 もう一つはcircleciのコンソールで環境変数をキーとバリュー形式で登録しておき、config.ymlでキーを呼び出すこと…

dockerのvolumeがホストのどこにあるのか

Dockerのvolumeがホストのどこに存在するか知りたい。 docker-compose.yml内で以下のように記述することに関していままで自分が勘違いしていた。 db: image: postgres volumes: - postgres_data:/var/lib/postgresql/data <-コレ environment: - POSTGRES_DB…

docker nginxの基本的な使い方

dockerを触ってみて分かったこと。 dockerのコマンドを使ってimage作成やコンテナを実行する。 これとは別に、つまりdockerコマンドを使ってimage作成する代わりに、Dockerfileを作ってdocker buildコマンドを使うとimageを作成する事もできる。 ここに関し…

django vueを追加する

MPAでvueを使いたい。。。 色んな方法で実現できると分かった。 cdnを使う方法 vue cliを使う方法 vue cliを使わないで行う方法 最終的にはvue cliを使って構築するのがわかりやすいと感じた。cdnはもちろんかんたんだけれどもvuetifyを組み合わせて使う方法…

node.jsのインストール方法(mac)

参考資料 Node.jsをmacOSへインストールする方法 | プログラミング入門ナビ MacにNode/npmをインストールする手順 2019年1月更新 - suzu6 nodejs,npmインストールしてみた感想 macでnpmを使うには、まずnodejsが必要になる。これはnodejsにnpmが含まれている…

Dockerについてメモ

よく使うコマンド docker-composeコマンドを使ってサービス立ち上げ docker-compose -f docker-compose.yml up -d --build サービスを終了する docker-compose -f docker-compose.yml down -v 立ち上げたサービスを使ってテストを実行する(django) docker ex…

ssh接続が遅い場合の対処法

virtual boxにssh接続した結果パスワード入力から認証まで時間がかかり、timeoutになってしまってログインができなかった。(visual stadio code) この問題に劇的に改善が見られたのはsshd_configファイルのUseDNS=noに変更することだ。 手順を完結に記述して…

SublimeText3の環境設定

djangoの環境を整える https://pyphilly.org/my-sublime-text-3-setup-pythondjango-development/ ターミナルからsublコマンドでsublime text3を開く sublime text3 には、/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl が存在する。 こ…

geodjangoのためにcentos7でpostgis環境を構築する

まずCentos7にpostgresql11をインストールする postgeSQL公式のリポジトリを利用する。 $ sudo yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm リポジトリをインストール後postgresql…

geodjangoの環境構築

https://docs.djangoproject.com/ja/2.2/ref/contrib/gis/install/ geodjangoを使うには、python,django,空間データベース、地理空間ライブラリが必要。 PostgreSQLで空間データベースを使うには、ライブラリであるGEOS,GDAL,PROJ.4,PostGISが必要である。 m…

デプロイ時にプロジェクトに必要なライブラリを漏れなくインストールする

結論:pip freezeを使う サーバーに必要なライブラリをインストールするために開発環境でpip freezeまたはpip listを使い確認しては、サーバーでライブラリをインストールしてきたが一気にインストールしてしまったほうが良い。 pip freeze > requirements.t…

セキュリティ

不正アクセスの種類 ほとんどの不正アクセスはSSH,FTP,HTTP/HTTPSであるらしい。セキュリティを上げるためにはこれらの設定を整えれば良いらしい。 httpに関しては海外IPアドレスからのアクセスを遮断する方法が有効であるらしい。 参考:https://www.cyberb…

gunicornをインストールしてサービス公開

http://torajirousan.hatenadiary.jp/entry/2019/04/22/181826 collectstaticを実行 サーバーに/usr/share/nginx/html/media,/usr/share/nginx/html/staticディレクトリがあることを確認してcollectstaticを実行する。 # ディレクトリがない場合以下を実行 $…

エラー: django.db.utils.ProgrammingError: syntax error at or near "WITH ORDINALITY" LINE 6: FROM unnest(c.conkey) WITH ORDINALITY co...

エラー django.db.utils.ProgrammingError: syntax error at or near "WITH ORDINALITY" LINE 6: FROM unnest(c.conkey) WITH ORDINALITY co... 以上のエラーが発生した。 これはdjangoのmigrateコマンドを実行したときのエラーである。 環境 環境 ---------…

centos7にdjangoをインストール

djangoのインストール pipを予めインストールしておくこと。 sudo pip install django==2.2 その他djangoに必要と思われるもののリスト # djangoで画像を表示させるアプリを作る時 pip install -y Pillow # django-allauthを使う時 pip install django-allau…

さくらVPSを使ってdjangoを公開する まとめ

さくらVPSにcentos7を入れる http://torajirousan.hatenadiary.jp/entry/2019/03/31/011303 centos7の初期設定 サーバーへ安全にssh接続できるような設定を行う。 http://torajirousan.hatenadiary.jp/entry/2019/04/22/172101 条件は以下の通り。 root以外…