I have recently installed gns3 and I have specific ios version which I need to deploy locally for training, but for some reason gns3 wont pick them up. I am wondering is there any workaround for this? Can I still run any cisco ios images in virtual environment and connect them to my existing internal network for further usage?
GNS3 is a front end for different kinds of "virtual" network hardware.
It started as an GUI for dynamips which can emulate certain older Cisco hardware and the images for this hardware.
For some time now you can use "virtual" networking hardware, like Cisco ASR1000v which is basically a Linux VM running the IOS Code inside. A third option is to use Cisco IOU (IOS for UNIX) which is also a Linux with IOS Code inside but it's espacacily build for lab and learning environments, not to actually route or switch traffic. For these VMs you can use different VM providers like qemu, VMWARE or VirtualBox. You can also use networking software provide as a docker container by a vendor.
So to answer you question: Yes, you need specific images. If it's not emulated by dynamips, not already a ready to run "virtual" hardware (either as VM or container) and not an IOU image you can't use the specific image.
To answer the question in another way: If you're image is used with a specific hardware (with the exception of the older hardware emulated by dynamips) you are out of luck.