/ HOWTO_FLUXNODES.md
HOWTO_FLUXNODES.md
 1  # FluxNodes
 2  
 3  Flux is a Proof-of-useful-work blockchain which offers a decentralized cloud infrastructure.
 4  
 5  They claim: 
 6  * run applications in docker containers on FluxNodes
 7  * run MySQL cluster
 8  * run wordpress
 9  * store files with FluxDrive (IPFS based)
10  
11  ## On Decentralization and Security
12  
13  They call it the "decentralized cloud". However, keep in mind:
14  * the control of the infrastructure seems to be centralized at FluxNodes. 
15     * unsure: you may be able to run your own *api.runonflux.com* backend. they let you pick a custom backend at least.
16  * ingress is systematically centralized because you can't statically know where your instances are deployed to. you get a proprietary `*.app.runonflux.io` domain to connect to your service and the SSL certificate belongs to *InFlux Technologies Limited*.   
17  * You may effectively be sharing secrets with node operators as they have full access to the memory of their machines, even if your instance is containerized.
18  
19  It depends on the nature of your services if these points are a problem.
20  
21  ## Getting Flux Tokens
22  
23  What worked:
24  1. Buy ~200 Flux ERC-20 tokens on kraken
25  2. Install Zelcore Browser extension in Chrome
26     * Create a fresh wallet
27  3. Withdraw from kraken to ETH mainnet, Address shown in Zelcore for ETH mainnet. 
28     * Need to send it a little ETH for gas as well.
29  4. Swap ERC-20 Flux to native Flux in Zelcore
30     * be patient, it can take a while and doesn't tell you it's ongoing....
31  
32  ## FluxDrive
33  
34  https://cloud.runonflux.com/flux-drive
35  
36  A IPFS storage solution provided by FluxNodes with a web UI dApp for uploading, downloading and sharing.
37  * they say it is encrypted storage, but it seems it isn't. 
38     * [see this unencrypted sharing link to plain text](https://jetpack2_38080.app.runonflux.io/ipfs/QmWMA86TEtQLRt8jd9TTwxEHVwe1c88yZ67maNKsQU4kL6) 
39  * failed to upload larger files:
40     * png 41kB -> failed 
41     * mp3 9MB -> failed
42  
43  Failed to fetch the content from my own ipfs node (this can be a standard ipfs issue. Routing is notoriously bad)
44  
45  `ipfs get QmWMA86TEtQLRt8jd9TTwxEHVwe1c88yZ67maNKsQU4kL6`
46  
47  ## Wordpress
48  
49  * login with Zelcore wallet
50  * ordered the smallest instance
51  * paid with Flux tokens
52  * never confirmed the payment
53     * contacted support. awaiting reply. no reply, but the deployment worked anyway
54  * once deployed, you need to visit the wordpress setup page to create admin user. (Up until then it is unprotected)
55  * https://wordpress1769607931402.app.runonflux.io/
56    * currently pointing to 5.39.57.45, but no fixed IP ordered
57  * admin page: https://wordpress1769607931402.app.runonflux.io/wp-admin/ /log in with the admin user and pwd created
58  * deployment management: https://cloud.runonflux.com/apps/management login with zelcore wallet
59  
60  ## custom docker containers
61  
62  observations
63  * deployment relies on public docker images on dockerhub
64     * this means no secrets can be deployed directly 
65  * containers must be hosted publicly on docker hub and the size is limited (i.e. mongo:7 is too large with 2.3GB )
66  
67  tutorial:
68  https://academy.app.runonflux.io/tutorials/basic-deployment
69  * see result at https://helloflux.app.runonflux.io
70     * didn't work on the first attempt, probabaly because I didn't explicitly hit the (+) for the port mapping.
71     * updating the component and adding the ports again worked
72  * nice is the management options, incl a terminal into the docker:
73     * https://cloud.runonflux.com/apps/manage/helloflux