That would be the same issue with a desktop, you would have to "create" a network with a DHCP server on an ethernet interface etc..... get routing going or NAT. Your router that connects you to the internet does all of that already, why not make it easier for yourself and plug it into that ?
To install the Octopi image from a linux box you can just use dd, open a command line and isue lsblk, that should list all block devices attached. So check the output before and after you plug in the SD card, you see which one was added. Double check the size is plausible. Here is my output with SD card, device names might be different for you:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 1.4T 0 disk
├─sda1 8:1 0 953M 0 part [SWAP]
└─sda2 8:2 0 1.4T 0 part /
sdb 8:16 0 1.4T 0 disk
└─sdb1 8:17 0 1.4T 0 part /vms1
sdc 8:32 1 7.2G 0 disk
└─sdc1 8:33 1 7.2G 0 part
sr0 11:0 1 1024M 0 rom
So i have /dev/sdc as my sd card. Now I would simply issue the following to write the imake;
dd bs=4M if=2018-04-18-octopi-stretch-lite-0.15.1.img of=/dev/sdc conv=fsync
Note that it will destroy everything that was on your SD card before. After that is done and you do lsblk again you should see 2 partitions, one is a few megabyte and the other is 2 gb. Thats it, plug that SD card in your R-Pi, boot it and wired network should come up.