ラベル nodejs の投稿を表示しています。 すべての投稿を表示
ラベル nodejs の投稿を表示しています。 すべての投稿を表示

2020年5月22日金曜日

nodejs for centos

1)イメージを取得する
docker pull centos:latest
docker images

2)centosのdockerを起動させる。
docker run -i -t -d centos /bin/bash

3)接続対象のコンテナを確認する。
docker ps

4)対象のコンテナに接続する。
docker attach b7ff54ee8668


nodejsインストール:
curl -sL https://rpm.nodesource.com/setup_12.x | bash -
yum install nodejs
node -v

vi hello-server.js
--------------- hello-server.js ----------------------------
var http = require('http')
var os = require('os')

http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'})
    const host = os.hostname()
    res.end(`Hello World ${host} \n`)
}).listen(8989)
-------------------------------------------------------------

node hello-server.js 
ブラウザを立ち上げて、http://サーバのIP:8989で開く

MySQLのインストール:

1)mariadbを削除する。
sudo yum remove mariadb-libs
sudo rm -rf /var/lib/mysql

2)mysqlのリポジトリをインストール
sudo rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

3)MySQLをインストール
sudo yum install mysql-community-server

4)MySQLのサービスを起動する。
systemctl start mysqld

5)パスワードを確認
sudo cat /var/log/mysqld.log | grep password
2019-09-20T15:00:11.505248Z 1 [Note] A temporary password is generated for root@localhost: >7IanuLGVwsU

6)MySQLのインストールを行う。
mysql_secure_installation

[パスワードの設定]
Pass@123

node用のMySQLのプラグインをインストール:
npm install mysql



MySQLにアクセス権限を与える:
--------------------------------------------------------------------------
SELECT host FROM mysql.user WHERE User = 'root';

CREATE USER 'root'@'ip_address' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'ip_address';

CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;
---------------------------------------------------------------------------


nodeと接続するファイルを作成:
-------------------------------------------------------------------------------------
'use strict';

let mysql = require('mysql');
let connection = mysql.createConnection({
  host : '192.168.2.77',
  user : 'root',
  password : 'Pass@123',
  port : 3306,
  database: 'test1'
});

connection.connect();

connection.query('SELECT * from product LIMIT 2;', (err, rows, fields) => {
  if (err) throw err;

  console.log(rows);
});

connection.end();
---------------------------------------------------------------------------------------



2020年5月21日木曜日

nodejs x redis書き込みテスト

前提:
①コンテナ間で疎通確認ができること。
②node用のredisのプラグインが入っていること。
導入してない場合は、以下の手順を行う。
npm install redis


nodejs側:
以下、index.jsファイルを作成して、redisへの書き込みテストを行う。

[sample]
------------------index.js------------------------------------
'use strict'
const redis = require('redis')
// ............
const config = {
    host: '717b10b30122',
    port: 6379
}
// ......
const client = redis.createClient(config)
// ..................
client.set('key4', 'wow55')     
// ...........................
client.get('key', (err, reply) => {
    console.log(reply)
})
// ..................
client.del('key')
// ..............................
client.get('key', (err, reply) => {
    console.log(reply)
})
// ......
client.quit()
-------------------------------------------------------------

作成したindex.jsを実行して、redisに書き込みを行う。
node index.js


redis側:
以下、確認をしてみると、書き込み出来たことが分かった

node (hello world)

express test
cd test
npm install


今回、以下の2点を修正を行う
ls -la

vi  bin/www
nodejsをbeanstalkにあげる場合、内部のnginxでプロキシーでルーティングをしていて
8081をデフォにしているので、それに合わせて以下も修正した。
(beanstalknginx内部で修正すれば、他のポートでもルーティングできるっぽい)

次に、hellloworldの記入を行う。
vi routes/index.php


beanstalkの初期設定:
①初期化と環境の作成を行う。
eb init -i
eb create

②以下を行うことでbeanstalkにデプロイを行う場合
今回作成した、nodejsのプロジェクトファルダー内部で以下を実施すること
eb deploy

③beanstalkのコンテナオプションのノードオプションに以下を入力する。

地味ながら表示可能である

node.js

mkdir [新規フォルダ]
npm init -y

express:
npm -g install express
npm install -g express-generator

実行方法:
npm install express --save

手順:
express [アプリ名]
npm install

node.js(古いバージョンインストール)


yum install -y git
yum install git
git clone https://github.com/creationix/nvm.git ~/.nvm
source ~/.nvm/nvm.sh
nvm --version
nvm install v0.10.46
nvm alias default v0.10.46
node --version
npm install -g forever@0.15.3

2020年5月20日水曜日

node.js(forever) ログの出力方法について

Foreverのログの出力方法を記載する。
Dockerの癖なのか把握ができていないが、iaasベースで
通常導入したforeverと異なり、forever listに表示されているlogを開くと
null状態なので、出力方法を検討してみた。

参照先:


----------------------------------------
FROM node:0.10.46

RUN npm install -g forever@0.15.3
COPY ./ /

RUN apt-get update
RUN apt-get install -y vim

//Health check
HEALTHCHECK CMD curl -s -S -o /dev/null http://127.0.0.1

// Start forever
CMD ["forever", "-m", "10", "server.js"]
// ログの出力コマンド
CMD ["forever", ”start", "-o", "stdout.log", "-e", "stderr.log", "server.js"]

EXPOSE 3000 
----------------------------------------

2019年8月18日日曜日

nodejs 簡単webページ作成

1)"npm install パッケージ名 --save"で webフレームワークをダウンロードする。
npm install express --save


2)簡単な"Hello Node.js!"が表示されるコンテンツを作成してみる
vi server.js
=====ここから ============
const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send('Hello Node.js!');
});

app.listen(3000, () => {
    console.log("My app listening on port 3000!");
});
=====ここまで=============


3)以下を実行することにデプロイします。
node server.js


4)ポート番号:3000にしているので、ブラウザで以下のアドレスにすれば表示されているはず。
127.0.0.1:3000

ローカルLLMでコーディングさせるポイント

 簡単な指示で、依頼するとコンテキストオーバーで記憶喪失になって コードの内容が一致しないことが起こるので、work.mdみたいな作業メモを取らせたるのがよい 途中から、別スレッドに再実施する場合でも、work.mdが引き継ぎとして 参照して実施してくれるのがポイント