Categories
Docker nginx Ubuntu 🏴‍☠️

วิธีการติดตั้ง Free SSL Certificates จาก Let’s Encrypt โดยใช้ Docker และ Nginx

Install Docker on Ubuntu

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

 Update the Ubuntu package database

sudo apt-get update

install Docker

sudo apt-get install -y docker-ce
Categories
Linux Ubuntu 🏴‍☠️

How to kill a nodejs process in Linux?

sudo netstat -lpn |grep :'3000'

3000 is port i was looking for, After first command you will have Process ID for that port

kill -9 1192

in my case 1192 was process Id of process running on 3000 PORT use -9 for Force kill the process

pkill is the easiest command line utility

pkill -f node

or

pkill -f nodejs

whatever name the process runs as for your os

Categories
Ubuntu 🏴‍☠️

วิธี Setup proxy ให้ nvm บน linux (WSL)

NVM uses curl, so modifying the file ~/.curlrc file (or create it if it does not exist)

proxy = <proxy_host>:<proxy_port>

จากนั้นก็ปิดเครื่องแล้วเปิดใหม่

credit

https://stackoverflow.com/questions/42244572/nvm-proxy-settings-configuration-file

Categories
digital ocean Linux Ubuntu 🏴‍☠️

Disable root ssh

/etc/ssh/sshd_config

PermitRootLogin yes -> PermitRootLogin no

sudo service ssh restart

Categories
Linux Ubuntu 🏴‍☠️

When restart apache server following error : Could not reliably determine the server’s fully qualified domain name

When I restart my apache server using the command

sudo /etc/init.d/apache2 restart

I get the following error:

Restarting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2:
Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

ubuntu 13.10 or newer

As of Apache 2.4 – which is available by default as of 13.10 – you cannot use the method about adding a config file in the conf.d directory.

Apache no longer uses the conf.d directory. All the configuration files are stored inside /etc/apache2/conf-available directory and all the configuration files should now have a .confextension.

In order to solve this message in Apache 2.4, we have to create a configuration file inside the conf-available directory. For example servername.conf.

sudo vi /etc/apache2/conf-available/servername.conf

And inside this we just need to add one line

ServerName localhost

You can combine the previous two commands in one with:

echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf

If you want to use a domain name or any other name depending on the requirement its fine, just replace localhost with whatever you need. Next you have to enable this configuration. For this, you need to run the following command:

sudo a2enconf servername

a2enconf is a command to enable a configuration file in Apaches 2.4. Also note that servernameon the above command is from the name of the configuration file servername.conf. If your configuration file was ngenericserver.conf then you would have to write sudo a2enconf ngenericserver.

After this reload the server and the above message will no longer bug you.

sudo service apache2 reload

or

sudo apache2ctl graceful

Now after this you will see that the message will not be shown again and the problem will be fixed.


source : http://askubuntu.com/questions/256013/could-not-reliably-determine-the-servers-fully-qualified-domain-name
Categories
digital ocean Linux MySQL Ubuntu 🏴‍☠️

เมื่อ Mysql Restart ไม่ได้ บน Digital Ocean

Swap Memory

The tiny droplet I have has 512MB RAM, and 20GB on SSD harddisk.
It’s a waste not to create swap memory out of the 20GB SSD!
So, add a few GB of swap memory to your Ubuntu.

Steps:

# Confirm you have no swap
sudo swapon -s

# Allocate 1GB (or more if you wish) in /swapfile
sudo fallocate -l 1G /swapfile

# Make it secure
sudo chmod 600 /swapfile
ls -lh /swapfile

# Activate it
sudo mkswap /swapfile
sudo swapon /swapfile

# Confirm again there’s indeed more memory now
free -m
sudo swapon -s

# Configure fstab to use swap when instance restart
sudo nano /etc/fstab

# Add this line to /etc/fstab, save and exit
/swapfile none swap sw 0 0

# Change swappiness to 10, so that swap is used only when 10% RAM is unused
# The default is too high at 60
echo 10 | sudo tee /proc/sys/vm/swappiness
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf

credit
http://samwize.com/2014/06/10/cannot-restart-mysql-for-digital-ocean-server-low-memory/

https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04

Categories
digital ocean Ubuntu 🏴‍☠️

การ Set up ให้ Digital Ocean รันหลาย Website (Domain) ใน 1 Droplet

ทุกวันนี้การใช้งาน Cloud เป็นที่แพร่หลาย ทั้งยังง่ายและราคาถูกกว่าเมื่อก่อนมาก ผมได้ลองใช้ Digital Ocean มาระยะหนึ่งเพื่อเทส App ประทับใจมากเนื่องจากราคาถูก และไม่ซับซ้อน แต่ก็ต้องแลกไปกับการที่เราต้องทำให้ส่วนของ Secure เอง (เคยโดน digital ocean ปิด Droplet เพราะโดนแฮ็กเข้ามาฝังมัลแวร์เป็นฐานยิง ddos -*- )

จากที่แพ็กเกจต่ำสุดจ่ายเดือนละ 5$ หรือ 160 กว่าบาท https://www.digitalocean.com/pricing/  ยังได้พื้นที่มาถึง 20GB ทั้งยังเป็น SSD Disk ด้วย เราจึงควรที่จะนำหลายๆเวปไซต์ (ที่ไม่ได้โหลดหนักมาก)มายัดใส่ไว้เพื่อความคุ้มค่าฝุดๆ 55555

Step 1

ทุก Domain ที่จะย้ายมาให้แก้ไขเนมเซิฟเวอร์ให้เป็นตามนี้

NS1.DIGITALOCEAN.COM
NS2.DIGITALOCEAN.COM
NS3.DIGITALOCEAN.COM

จากนั้นไปตั้งค่าที่เมนู dns ของ Digital Ocean ดังนี้
ใส่ชื่อ Domain เลือก droplet ที่ต้องการจากนั้นกด Create Record

Screen Shot 2558-07-24 at 2.53.36 PM

จากนั้นก็ตั้งค่าตามนี้

Screen Shot 2558-07-24 at 2.55.21 PM

จากนั้นก็เพิ่ม Domain ที่ต้องการย้ายเข้ามาแบบเดียวกัน

Categories
digital ocean Ubuntu wordpress 🏴‍☠️

ย้าย WordPress ไป DigitalOcean

1) backup database  ด้วย phpmyadmin เป็น zip

Screen Shot 2558-07-24 at 11.57.13 AM

2) ftp zip file ขึ้นบนdigital ocean

3) create database ที่ digital ocean จากนั้น import zip

4) แก้ไข wp-option siteurl กับ home ให้ตรงกับ url

Screen Shot 2558-07-24 at 11.40.51 AM

 

5) backup folder ใน web ให้เป็น zip
6) ftp zip file ขึ้นบนdigital ocean
7) unzip พร้อมกับเซตสิทธิการใช้งาน

unzip xxx-backup.zip -d /var/www/
mv xxx-backup xxx01
chmod -R g+w xxx01
chgrp -R www-data xxx01

หรือ

unzip xxx-backup.zip -d /var/www/
mkdir xxx01
cp -a xxx-backup/. xxx01
chmod -R g+w xxx01
chgrp -R www-data xxx01

8) แก้ไข file wp-config.php

  • แก้ชื่อ database user pass
  • เพิ่ม define(‘FS_METHOD’,’direct’);

nano xxx01/wp-config.php

Screen Shot 2558-07-24 at 11.38.09 AM

Categories
digital ocean Linux Ubuntu 🏴‍☠️

mod_rewrite Apache LAMP on DigitalOcean

This did the work for me.

sudo nano /etc/apache2/sites-enabled/000-default.conf

Also edited the vhost with the following to enable .htaccess.

<Directory /var/www/html/public/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>
Categories
digital ocean nginx Ubuntu 🏴‍☠️

ติดตั้ง Laravel 5 กับ Nginx บน Ubuntu 14.04

sudo apt-get update
sudo apt-get install nginx php5-fpm php5-cli php5-mcrypt git

sudo nano /etc/php5/fpm/php.ini
uncomment this and set
cgi.fix_pathinfo=0

sudo php5enmod mcrypt

sudo service php5-fpm restart

sudo mkdir -p /var/www/laravel

sudo nano /etc/nginx/sites-available/default

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /var/www/laravel/public;
index index.php index.html index.htm;

server_name server_domain_or_IP;

location / {
try_files $uri $uri/ /index.php?$query_string;
}

location ~ .php$ {
try_files $uri /index.php =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

sudo service nginx restart

Create Swap File (Optional) (like a 512mb Droplet).

First, we can create an empty 1GB file by typing:

sudo fallocate -l 1G /swapfile
We can format it as swap space by typing:

sudo mkswap /swapfile
Finally, we can enable this space so that the kernel begins to use it by typing:

sudo swapon /swapfile

Install Composer and Laravel

cd ~
curl -sS https://getcomposer.org/installer | php

sudo mv composer.phar /usr/local/bin/composer

sudo composer create-project laravel/laravel /var/www/laravel

sudo chown -R :www-data /var/www/laravel

sudo chmod -R 775 /var/www/laravel/storage
* Laravel 5

sudo chmod -R 775 /var/www/laravel/app/storage
* Laravel < 5

FINISH

ref :
https://www.digitalocean.com/community/tutorials/how-to-install-laravel-with-an-nginx-web-server-on-ubuntu-14-04

http://gunoob.com/fix-laravel-show-blank-or-white-page/