Store Data to local disk

I need some suggestions as I am new in Docker World and this is my first post in this forum. I am trying to develop an image with the combination of 5-6 software and tools and I have already successfully build it. It combines something like following

  1. A Database (Postgresql)
  2. A Node Server
  3. An API server
  4. A Go Server
  5. Others are the data processor tool

The image will run through a few Arguments such as process, start, stop, backup, restore and update commands. Here is the utilization of those commands separately

process - When the image will run with process command few data will be automatically processed from different online file sources and will be saved on a database and a few others will be save as a file on disk.
start - This will start all servers along with postgres DB
stop - This will stop all servers along with postgres DB
backup - All database tables and processed files will be back up to a local directory
restore - Search for backup data in a given location and restore all the data then start the servers with those data
update - Delete the existing data and process data again

I need suggestions on the following topics:

  1. After processing data the data will not be removed if the container is even closed. How can I do that?
  2. I have already written the backup code. But I want to make the backup in a local directory, How?
  3. Is it a good practice to merge 5-6 or more tools together in a container or should I use docker-compose?
  4. Is the Argument/Command (process, start, stop, backup, restore and update) architecture a good practice? if not what will be the best concept?

Thanks in Advance…