I understand that i will need to be able to unlock my account in web3 to be able to deploy smart contracts. It's all good except i'm using Infura's hosted network instead which prevents me from interacting with accounts. I use keythereum and other methods to create user wallet generating the privatekey and public addresses.
My real questions are:
1. How can i compile my solidity contract code with solc(Nodejs package) and then "sign" it or deploy it to the Ethereum network?
2. Is there a method for me to pass in the privatekey and use that account to deploy the smart contract?