---
# System prepended metadata

title: How to Deploy Nakaflow

---

# How to Deploy Nakaflow
*  Install the Docker engine on the server.

* Link for installation the docker engine ==> https://docs.docker.com/engine/install/ubuntu/

* First of all clone both the repository [frontend] (https://github.com/xenowits/moneyprinter.info) and [backend] (https://github.com/xenowits/nakomoto-coefficient-calculator) from the github using git clone command.
   
    
*  Set the TLS on the server using the commands:
```
sudo apt install certbot python3-certbot-nginx
  ``` 
```
sudo certbot --nginx
  ```

    
* Check whether nginx is present on the server if not then run the commands to install the nginx.
```
   sudo apt update
  ``` 
```
   sudo apt install nginx -y
  ```

* So now nginx is install on the server go to this path /var/www/ and create a directory go inside the directory which you created and using nano create a file name nginx.conf and write the content to point the port 3000 to 80 like given below.
```
      server {
                listen 80;
                listen [::]:80;
            
      server_name domain_name;
                
      location / {
                proxy_pass http://localhost:3000/;
        }
 
      location /api/ {
                proxy_pass http://localhost:8080/;
        }
  ```
        
* Now go to this path /etc/nginx and open the nginx.conf using nano comment out this line             
           
      #include /etc/nginx/sites-enabled/*

* Add the path where your nginx.conf is present in to the nginx.conf file                             

      include /var/www/directory_name/*;

* Go to the nakomoto-coefficient-calculator directory where you clone this repository.
    
* For building the docker image from the docker file run the command.
```
   DOCKER_BUILDKIT=1 docker build . --platform=linux/amd64 -t xenowits/nc-calc:v0.1.0 
   
   ```

* After executing the build command check the image is created or not for checking run the command.
``` 
   docker images 
   
   ```

* Docker images command shows list of images you have.

* For creating a container from the image (xenowits/nc-calc) run the command.
``` 
   docker run -d --rm -v "$(pwd):/opt/xenowits" -p 8080:8080 xenowits/nc-calc:v0.1.0 
   
   ```
    
* Now we have to run the container for frontend go inside the moneyprinter.info directory you cloned.

 
* For building the image run the command.
```
   DOCKER_BUILDKIT=1 docker build . --platform=linux/amd64 -t xenowits/nakamoto-coefficient-frontend:v0.1.0
   
   ```
    
* For creating the container from the image(xenowits/nakamoto-coefficient-frontend) run the command.
``` 
   docker run -d -p 3000:3000 xenowits/nakamoto-coefficient-frontend:v0.1.0
   
   ```
    
* For checking our both container is running successfully type the command.
``` 
   docker ps
   
   ```
    
* If both are running just go to the browser and query for frontend and backend you will see your website successfully deployed on the server. 