Skip to content

How to install a self-hosted instance of iFramely for use with NodeBB

Configure
29 4 15.1k 1
  • thanks a lot @phenomlab , if it is OK for you, I would like to share our custom CSS codes with self-hosted iframely…

    The free version looks quite bigger than the paid version, so we improved the look with these CSS changes… It is still not as pretty as the original iframely embeds, but I believe it is still better than the default one.

    Of course, feel free to change/edit it as you like:

    
    .iframely-link .iframely-container {
        
        .img-responsive {
        height:120px !important;
        width: auto !important;
        overflow: hidden !important;
        }
    
    
        .iframely-meta {
        display: none !important;
        }
    
    
        .media {
        float: left !important;
        padding: 0 5px 0 0 !important;
        }
        
        .media-heading {
        margin-top: 5px;
        margin-bottom: 2px;
        }
    
        .description {
        position: relative !important;
        top: 10px !important;
        }
    
        .panel-iframely .iframely-embed .one-line {
        white-space: normal;
        }
        
        .panel-body {
        padding: 5px;
        }
    }
    
    
    
    
    wrote on last edited by
    #3

    @crazycells thanks for this. I too changed the default layout, but will certainly have a look at your CSS mods because they might be better than mine! 😄

  • thanks a lot @phenomlab , if it is OK for you, I would like to share our custom CSS codes with self-hosted iframely…

    The free version looks quite bigger than the paid version, so we improved the look with these CSS changes… It is still not as pretty as the original iframely embeds, but I believe it is still better than the default one.

    Of course, feel free to change/edit it as you like:

    
    .iframely-link .iframely-container {
        
        .img-responsive {
        height:120px !important;
        width: auto !important;
        overflow: hidden !important;
        }
    
    
        .iframely-meta {
        display: none !important;
        }
    
    
        .media {
        float: left !important;
        padding: 0 5px 0 0 !important;
        }
        
        .media-heading {
        margin-top: 5px;
        margin-bottom: 2px;
        }
    
        .description {
        position: relative !important;
        top: 10px !important;
        }
    
        .panel-iframely .iframely-embed .one-line {
        white-space: normal;
        }
        
        .panel-body {
        padding: 5px;
        }
    }
    
    
    
    
    wrote on last edited by
    #4

    @crazycells I tried this CSS, and it looks a little “cramped” to me - why not post some screenshots ?

  • wrote on last edited by
    #5

    here is an example… Since previews are just previews and do not give the whole info, we prefer to see them in the text as a small banner with some info in it… free iframely takes a much larger unnecessary space from the post…

    Screen Shot 2022-08-26 at 14.02.01.png

  • here is an example… Since previews are just previews and do not give the whole info, we prefer to see them in the text as a small banner with some info in it… free iframely takes a much larger unnecessary space from the post…

    Screen Shot 2022-08-26 at 14.02.01.png

    wrote on last edited by
    #6

    @crazycells looks like you’re using a 100% width there which would explain the cramped look on here as I set a static max-width 👍

  • @crazycells looks like you’re using a 100% width there which would explain the cramped look on here as I set a static max-width 👍

    wrote on last edited by
    #7

    @phenomlab yes, you have very customized themes here; so I guess CSS codes will need some adjustments for a similar look…

  • wrote on last edited by DownPW
    #8

    Thanks @crazycells for your code, I will test it, for sure 😉

    @phenomlab Resources level, do you know to what extent the CPU will be impacted by Iframely?

    Generally speaking, our forum uses between 20 and 50% of the CPU. With peaks at 80-90 which return an excess load and unavailability to the forum (a few seconds).

  • Thanks @crazycells for your code, I will test it, for sure 😉

    @phenomlab Resources level, do you know to what extent the CPU will be impacted by Iframely?

    Generally speaking, our forum uses between 20 and 50% of the CPU. With peaks at 80-90 which return an excess load and unavailability to the forum (a few seconds).

    wrote on last edited by
    #9

    @DownPW iFramely is multi threaded and runs as a cluster, so will spread itself across the amount of cores you have. If you run pm2 status you’ll see how many cores it’s using, plus the memory usage.

    I’ve never had an issue with it and I know that thousands of sites have it installed with no performance degradation. It scales very well and only seems to occupy a small selection of CPU and memory.

  • @DownPW iFramely is multi threaded and runs as a cluster, so will spread itself across the amount of cores you have. If you run pm2 status you’ll see how many cores it’s using, plus the memory usage.

    I’ve never had an issue with it and I know that thousands of sites have it installed with no performance degradation. It scales very well and only seems to occupy a small selection of CPU and memory.

    wrote on last edited by
    #10

    Ok @phenomlab

    Thanks for your answer but with pm2 status command, I see a % of CPU used but not the number of CPU core used…

  • Ok @phenomlab

    Thanks for your answer but with pm2 status command, I see a % of CPU used but not the number of CPU core used…

    wrote on last edited by
    #11

    @DownPW how many cores do you have ?

  • @DownPW how many cores do you have ?

    wrote on last edited by
    #12

    @phenomlab

    What a loser I am lol 😵

    I configured only one core on my VM !!!

  • @phenomlab

    What a loser I am lol 😵

    I configured only one core on my VM !!!

    wrote on last edited by
    #13

    @DownPW OMG 🤦

  • wrote on last edited by DownPW
    #14

    ha ha, i’m tired voila 🙂

    you say this:

    if you are using Cloudflare, this particular port (8061) isn’t routable with the free plan, so something to be aware of

    @phenomlab
    I’m using a free plan from CloudFlare, will this bother me for use Iframely on my server?

  • ha ha, i’m tired voila 🙂

    you say this:

    if you are using Cloudflare, this particular port (8061) isn’t routable with the free plan, so something to be aware of

    @phenomlab
    I’m using a free plan from CloudFlare, will this bother me for use Iframely on my server?

    wrote on last edited by
    #15

    @DownPW only if you choose to not proxy the traffic (grey cloud only, which is just DNS rather than the default orange cloud)

  • ha ha, i’m tired voila 🙂

    you say this:

    if you are using Cloudflare, this particular port (8061) isn’t routable with the free plan, so something to be aware of

    @phenomlab
    I’m using a free plan from CloudFlare, will this bother me for use Iframely on my server?

    wrote on last edited by
    #16

    @DownPW you will win this war 🙂

  • wrote on last edited by DownPW
    #17

    @phenomlab

    A CNAME on Cloudflare is not sufficient ?

    like this :

    16e51b39-776a-43d8-81a8-0b072cb52b6a-image.png

  • @phenomlab

    A CNAME on Cloudflare is not sufficient ?

    like this :

    16e51b39-776a-43d8-81a8-0b072cb52b6a-image.png

    wrote on last edited by phenomlab
    #18

    @DownPW no. It needs to be an A record. CNAME is canonical meaning that traffic sent to it will land up at your main nginx site. The A record will sent headers which nginx can use to route the traffic correctly.

    CNAME records do not have this and will resolve to the underlying host which will cause you problems. Useful for WWW and non-WWW, but that’s about it.

    Essentially, it’s an alias and not a record in it’s own right.

  • @DownPW no. It needs to be an A record. CNAME is canonical meaning that traffic sent to it will land up at your main nginx site. The A record will sent headers which nginx can use to route the traffic correctly.

    CNAME records do not have this and will resolve to the underlying host which will cause you problems. Useful for WWW and non-WWW, but that’s about it.

    Essentially, it’s an alias and not a record in it’s own right.

    wrote on last edited by cagatay
    #19

    @phenomlab i think my ifamely started to not work i dont know why 😞 youtube embed not working 😞

    7b229e08-8c8f-4d9e-be5d-78a4f0bb1b37-image.png

    [PM2][ERROR] Process or Namespace iframely not found
    [PM2][WARN] Current process list is not synchronized with saved list. App iframely iframely differs. Type ‘pm2 save’ to synchronize.

  • wrote on last edited by phenomlab
    #20

    @cagatay is the iframely service started ? That error message would indicate it’s not running

  • @cagatay is the iframely service started ? That error message would indicate it’s not running

    wrote on last edited by
    #21

    @phenomlab as a result of ps -x i cant see iframely service pid id so i think its not working automaticly when i rebooted the server. How can i start it?

  • @phenomlab as a result of ps -x i cant see iframely service pid id so i think its not working automaticly when i rebooted the server. How can i start it?

    wrote on last edited by
    #22

    @cagatay try pm2 start pm2.json which needs to be executed from the directory of the iFramely domain where it is installed. See previous documentation I provided after the installation.

    A quicker route would be to reboot your VPS to see if that resolves the issue.


Related Topics
  • Composer options on nodebb

    Solved Configure nodebb
    8
    1
    3 Votes
    8 Posts
    3k Views
    phenomlab
    @Panda You should be able to expose the CSS for these using F12 to get into console [image: 3591518c-e3a3-4ada-a43c-6b32a5e0359c-image.png] [image: a2b8ed46-4157-4ff2-85f0-576543380107-image.png] That should then expose the element once selected [image: 89d9c545-a47a-40d1-98f4-80cf3b958e8f-image.png] Here’s the below CSS you need based on the screenshot provided. .composer .formatting-bar .formatting-group li[data-format="picture-o"], .composer .formatting-bar .formatting-group li[data-format="spoiler"] { display: none; }
  • NodeBB: hCaptcha

    Solved Configure hcaptcha
    15
    2 Votes
    15 Posts
    4k Views
    phenomlab
    @mventures none that I know of. I don’t recall selecting these either for mine.
  • nodebb loading emojis

    Solved Configure nodebb emojis
    16
    1
    1 Votes
    16 Posts
    6k Views
    phenomlab
    @DownPW sure. Let me have a look at this in more detail. I know nginx plus has extensive support for this, but it’s not impossible to get somewhere near acceptable with the standard version. You might be better off handling this at the Cloudflare level given that it sits in between the requesting client and your server.
  • restarting nodebb on boot

    Unsolved Configure nodebb
    3
    1 Votes
    3 Posts
    2k Views
    phenomlab
    @eeeee said in restarting nodebb on boot: can I just run nodebb under nodemon for auto restarts? It’s a better method. Nodemon just looks for file system changes and would effectively die if the server was rebooted meaning you’d have to start it again anyway. Systemd is the defacto standard which is how the operating system interacts in terms of services, scheduled tasks etc.
  • Podcast Share NodeBB

    Solved Configure podcast nodebb
    15
    4 Votes
    15 Posts
    5k Views
    phenomlab
    @cagatay You could experiment with nodebb-plugin-ns-embed but I expect the x-origin tag on the remote site to prevent playback.
  • iFramely self host help

    Solved Configure iframely hosting
    10
    9 Votes
    10 Posts
    4k Views
    phenomlab
    @DownPW https://sudonix.com/topic/331/how-to-install-a-self-hosted-instance-of-iframely-for-use-with-nodebb
  • Configure SMTP for Nodebb

    Solved Configure
    14
    5 Votes
    14 Posts
    5k Views
    phenomlab
    @marusaky based on the work completed thus far (in relation to PM exchanges), I’m going to mark this completed. Sending email from the server itself works fine without issue, and DNS appears to be clean (valid SPF, DMARC, and DKIM records). It appears that only Gmail marks incoming messages from your domain as spam - perhaps because of the domain age, which there is nothing we can do to prevent this. Mail delivery to all other domains appears to work fine in al of my tests.
  • Iframely (Nodebb)

    Solved Configure
    40
    4 Votes
    40 Posts
    17k Views
    phenomlab
    @DownPW This is now resolved. The issue was an incorrect URL specified in the Nodebb plugin. I’ve corrected this, and now it works as intended.