2021年11月18日木曜日

クロニクル AWS Elastic Beanstalk で Hello World

windows で開発して、ディプロイします

node.js を使います

1.express generatorのインストール


>npm install -g express-generator


2.expressのテンプレート作成


作業用フォルダーで

>express

作業用フォルダーの下に各種ファイル、ディレクトリが作られます。


3.依存関係を設定する

同じ作業用フォルダーで

>npm install

4.ローカルで起動してみる

同じ作業用フォルダーで

>npm start


ブラウザーで

http://localhost:3000


を指定すると

Express 

Welcome to Express

が表示されました

5.AWS CLIのインストール&インストール

windows版のAWSCLI64.msiをダウンロードし、実行しました。


6.AWS CLIのセットアップ

コマンドプロンプトで、

>aws configure


アクセスキーとシークレットキーを指定しました

リージョンは、ap-northeast-1 (東京)を指定しました。


7.AWS CLIのお試し


>aws s3 ls


で、s3のバケットの一覧が表示されました。


8.EB CLIの インストール


コマンドプロンプトで、

> pip install awsebcli --upgrade --user

インストールされます。

9. Windowsのパスの設定


eb.exe がある位置まで、PATHを通します

自分の環境では

%USERPROFILE%\AppData\roaming\Python\Python38\scripts

でした。

10.確認

コマンドプロンプトで

>eb.exe --version
EB CLI 3.19.3 (Python 3.8.5)

が表示されました。


11.Elastic Beanstalkの環境の初期化

3.の作業用フォルダーで


>eb.exe init --platform node.js --region ap-northeast-1

Application Scripts has been created.

と表示されました

12.Elastic Beanstalkのサーバ環境の作成


>eb create --sample node-express-env

しばらく待つと・・

 node-express-env

という名前の環境ができます。(コンソールにも出てきます)。

13.アプリケーションの実行ファイルを作る

作業ディレクトリに、

「.ebextensions 」

フォルダーを作成します。

その下に

nodecommand.config

を作成しました

nodecommand.configの内容は

option_settings:
  aws:elasticbeanstalk:container:nodejs:
    NodeCommand: "npm start"

です。

14.変更をdeployしました


>eb deploy

15.確認

>eb open

で、表示を確認します

ブラウザで立ち上げると


Express 

Welcome to Express

が表示されました

16.クリーンアップ


>eb terminate


で、作った環境名(node-express-env)を指定すると終了します。












2021年10月27日水曜日

クロニクル Azureで仮想マシンを上げてみる


いろいろなHPを参考にしています

Azureは、無料のアカウントで実験しています


1.リソースグループの作成


管理ためのリソースグループです


・アジュールの管理画面から「リソースグループ」を選択

・「追加」で、以下を設定

    サブスクリプションは 無料試用版
  
  リソースグループは VMTest1 
  
    リージョンは (アジア太平洋)東日本

 「タグ」で次を参加

  名前:name
        値  :VMTest1

・作成する

・リソースグループを再度表示すると
  
 VMTest1

 ができています

2.仮想ネットワークの作成


Virtual Machineを置く、仮想ネットワークを作ります

・アジュールの管理画面から「仮想ネットワーク」を選択

・追加を選択し、次の設定で、仮想ネットワークを構築

 名前 VMTest1

 アドレス空間 172.16.0.0/16
 
 リソースグループ VMTest1

 サブスクリプション 無料試用版

 サブネットアドレス範囲 172.16.0.0/24

3.Virtual Machine の作成


・アジュールの管理画面から「Virtual Machines」を選択

・追加を選択

 リソースグループは、「1.」で作成したもの

 仮想マシン名は「VMTest1」

 イメージは、ubuntu Server 18.04 LTS


2021年10月24日日曜日

クロニクル node for での出力

1. サンプル


次の内容のファイルを作成します(sample3.js)。

for( var i = 0 ; i < 10 ; i++)
{
  console.log(i) ; 
 }


2.実行結果


作成したプログラムを、次のように実行します

・・・>node sample3

実行したターミナルに

0
1
2
3
4
5
6
7
8
9

が出力されます 。






2021年10月23日土曜日

クロニクル nodeのモジュールを試してみる

nodeでは、1つのファイルは、1つのモジュールに対応するようです

1. モジュールの作成(hello.js)


getCountという、オブジェクトを公開する、次の感じのコードを作成します

countは、公開されません

var count = 0;

module.exports = {

 getCount: function() {
  count++;
  return count ;
 }

};


2. モジュールを呼ぶ側の作成(sample5.js)


こんな感じです

var hello = require('./hello');

console.log(hello.getCount()) ;
console.log(hello.getCount()) ;


3.実行

・・・>node sample5

1
2


が表示されます。






2021年10月21日木曜日

node express /hello での Hello world

1.作成


次の内容のファイルを作成します(index.js)
var express = require('express');

var app = express();


app.get('/hello', function(req, res){
  res.send("Hello world!")
});

app.listen(3000);

2.実行


node index.js

ブラウザで

http://localhost:3000/hello

を指定すると

Hello world

が出ます。




2021年10月20日水曜日

クロニクル Node-Red インストール


mac で試しています

nodeは、導入済みとします

$node -v
v8.11.2


1.フォルダーの作成

mkdir node-red
cd node-red

2.インストール

$ sudo npm install -g --unsafe-perm node-red

3.実行してみる

コマンドラインで

$node-red

ブラウザで、コマンドラン実行で表示されたURL

(http://127.0.0.1:1880)にアクセスしてみます。

エディターが上がってきました。

動いているようです。





2021年10月19日火曜日

クロニクル Node + Express Express generator を試してみる

 nodeとexpressは、インストール済みとします。


1. generatorをインストール


$npm install -g express-generator


2.雛形の生成


適当なディレクトリで、


$express sample1


sample1というフォルダーができて、その下に各種ファイルができます。




3.必要なモジュールのインストール


sample1 フォルダーに入って


$npm install 


node_modulesフォルダが作られ、そこに必要なモジュールが登録されます


4.確認


sample1 フォルダーで


$npm start 


ブラウザで


http://localhost:3000/


とすると、Expressの画面が表示されます




2021年10月18日月曜日

クロニクル .NET Core EntityFramework での SELECT


ローカルにあるSQL ServerからのSELECTの例です。

DB:test1  Table:table1 から、SELECT してきます。


1.サンプル
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;


namespace ConsoleEntity1
{
    class Program
    {
        static void Main(string[] args)
        {
            System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);

            Console.WriteLine("Start");

            using (var context = new AppDbContext())
            {
                foreach (var table1 in context.table1)
                {
                    Console.WriteLine(table1.id);
                    Console.WriteLine(table1.id2);
                }
            }

        }

        //エンティティクラス
        public class table1
        {
            public int id { get; set; }
            public int id2 { get; set; }
        }


        //コンテキストクラス
        public class AppDbContext : DbContext
        {
            protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
            {
                base.OnConfiguring(optionsBuilder);

                optionsBuilder.UseSqlServer(@"Data Source=******;Initial Catalog=Test1;user id=*** ;password=******");
            }

            public DbSet<table1> table1 { get; set; }
        }

    }
}



2021年10月17日日曜日

クロニクル .NET Core ASP.NET Core Web Helloworldを直してみる

1.Startup.cs の修正



public void Configure

を、以下のように修正します

 endpoints.MapGet("/", async context =>
 {
      // await context.Response.WriteAsync("Hello World!");
      context.Response.ContentType = "text/html" ;
      await context.Response.WriteAsync("<html><body><h1>hello!</h1></body></html>") ;
                    
 });

2.実行すると


h1で

hello!

が表示されます


2021年10月14日木曜日

クロニクル .NET Core ASP.NET Core Webを作ってみる

Visual Studo Code にて

1.テンプレートの作成


ターミナルで

dotnet new web

実行したホルダーに

Program.cs

等ができます。

2.証明書


ターミナルで

dotnet dev-certs https --trust

を実行すると、証明書発行のダイアログが出ます。

「はい」を押して終了します。

3.実行


ターミナルで

dotnet run

を実行し、


https://localhost:5001/

にアクセスすると

Hello World!

が表示されました








2021年10月13日水曜日

クロニクル .NET Core ASP.NET Core Controllerを追加する

前の記事の続きです。

1.Controllerの追加


Controllerフォルダーの下に、次のようなファイル(SampleController.cs)を作成します

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using AspNetCoreSample.Models;

namespace AspNetCoreSample.Controllers
{
    public class SampleController : Controller
    {
        public string Index()
        {
            return "This is my Sample";
        }
    }
}

2.実行


> dotnet run で実行し

http://localhost:5000/Sample

にアクセスすると

This is my Sample

が表示されます





2021年10月12日火曜日

クロニクル .NET Core ASP.NET Core を試す

1.サンプルのフォルダーの作成


適当な場所に

AspNetCore 

フォルダーを作成します

2.


Visual Studio Code を起動し、

[ファイル]-[フォルダーを開く]

で、2.のフォルダーを開く

3.



[表示]-[ターミナル]でターミナルを開く

ターミナルで

> dotnet new mvc --auth Individual -o AspNetCoreSample


AspNetCoreSampleフォルダーと各種ファイルが作成されます


Visual Studio Codeに表示さます。

4.実行


> cd AspNetCoreSample

> dotnet run

これでURL

http://localhost:5000

にアクセスすると、httpsにリダイレクトされ

ブラウザーでエラーがでます。

そこで、

Startup.cs

54行目

//app.UseHttpsRedirection();

コメントアウト

します。

そして再度実行し

http://localhost:5000

で、

Welcome ページが表示されました

5.参考


次のようなファイルができました。(代表例)

〇 Startup.cs Program.cs

web serverと、ASP.NET Coreのパイプラインを構成する。

Startupクラスには、スタティックな処理やエラーページなどを指定する。

〇 Model、View、Controllersの各フォルダーには、MVCの各要素がある

〇 wwwrootフォルダーには、CSS、JavaScript、imageファイルなど、スタティックなファイルが置かれる

〇 appsettings.json には、ASP.NET Coreの構成があり、startupに呼び出される









2021年9月18日土曜日

クロニクル node express windwos10でのインストール

1. インストール

node.js は、インストール済みとします。

コマンドプロンプトで、同じディレクトリで以下を実行しました

>npm init

(聞かれるパラメータは、すべて適当に答える)

>npm install  express

npm notice created a lockfile as package-lock.json. You should commit this file.

npm WARN togis@1.0.0 No description

npm WARN togis@1.0.0 No repository field.

と怒られる

しょうがないので、gitのリポジトリを適当につくる

>git init

>git add package-lock.json

>git commit

おこられるが、無視

再び

>npm install express

ワーニングがでるけど、node_modulesフォルダもあるので、

できてるのかなと思う

2.サンプル


次のようなコードを作成します(index.js)

const express = require('express')
const app = express()
app.get('/', (req,res) => res.send('Hello'))
app.listen(3000, () => console.log('running'))

3.実行結果



1.をインストールしたフォルダーにて

コマンドプロンプトで

>node index.js

を実行すると、コマンドプロンプトに

running

が表示されます

ブラウザで

http://localhost:3000/

を指定すると

Hello

が表示されました。





 

クロニクル node.js で、Logger(log4js)

1.インストール

$npm install log4js

2. 確認

こんなコードを書きました。(logsample.js)

let Log4js = require('log4js');

let logger = Log4js.getLogger(); 

logger.level = 'all' ; 

logger.debug('Logger output') ;

3.実行結果

[20XX-XX-XXT XX:XX:XX.XXX] [DEBUG] default - Logger output

が出力されました。





クロニクル MacでIntelliJ

 1. IntelliJ IDEA Community Editionのダウンロードとインストール 1-1.ダウンロード: Mac用のCommunity Edition(無料版)を選択し、**.dmg**ファイルをダウンロードします。 ここからダウンロードしました。 https:...